Module: Kredis::Connections

Included in:
Kredis
Defined in:
lib/kredis/connections.rb

Constant Summary collapse

DEFAULT_REDIS_URL =
"redis://127.0.0.1:6379/0"
DEFAULT_REDIS_TIMEOUT =
1

Instance Method Summary collapse

Instance Method Details

#clear_allObject



25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/kredis/connections.rb', line 25

def clear_all
  Kredis.instrument :meta, message: "Connections all cleared" do
    connections.each_value do |connection|
      if Kredis.namespace
        keys = connection.keys("#{Kredis.namespace}:*")
        connection.del keys if keys.any?
      else
        connection.flushdb
      end
    end
  end
end

#configured_for(name) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
# File 'lib/kredis/connections.rb', line 13

def configured_for(name)
  connections[name] ||= Kredis.instrument :meta, message: "Connected to #{name}" do
    if configurator.root.join("config/redis/#{name}.yml").exist?
      connector.call configurator.config_for("redis/#{name}")
    elsif name == :shared
      Redis.new url: ENV.fetch("REDIS_URL", DEFAULT_REDIS_URL), timeout: DEFAULT_REDIS_TIMEOUT
    else
      raise "No configuration found for #{name}"
    end
  end
end