class DCell::Registry::RedisAdapter

Public Class Methods

new(options) click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 8
def initialize(options)
  # Convert all options to symbols :/
  options = options.inject({}) { |h,(k,v)| h[k.to_sym] = v; h }

  @env = options[:env] || 'production'
  @namespace = options[:namespace] || "dcell_#{@env}"

  redis  = Redis.new options
  @redis = Redis::Namespace.new @namespace, :redis => redis

  @node_registry   = NodeRegistry.new(@redis)
  @global_registry = GlobalRegistry.new(@redis)
end

Public Instance Methods

clear_all_nodes() click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 26
def clear_all_nodes
  @node_registry.clear_all
end
clear_globals() click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 30
def clear_globals
  @global_registry.clear_all
end
get_global(key) click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 90
def get_global(key);        @global_registry.get(key) end
get_node(node_id) click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 60
def get_node(node_id);       @node_registry.get(node_id) end
global_keys() click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 92
def global_keys;            @global_registry.global_keys end
nodes() click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 62
def nodes;                   @node_registry.nodes end
remove_node(node) click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 22
def remove_node(node)
  @node_registry.remove node
end
set_global(key, value) click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 91
def set_global(key, value); @global_registry.set(key, value) end
set_node(node_id, addr) click to toggle source
# File lib/dcell/registries/redis_adapter.rb, line 61
def set_node(node_id, addr); @node_registry.set(node_id, addr) end