Module: Norton::HashMap::ClassMethods

Defined in:
lib/norton/hash_map.rb

Instance Method Summary collapse

Instance Method Details

#hash_map(name, options = {}) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/norton/hash_map.rb', line 10

def hash_map(name, options = {})
  register_norton_value(name, :hash_map, options)

  define_method(name) do
    instance_variable_get("@#{name}") ||
      instance_variable_set("@#{name}",
        Norton::Objects::Hash.new(norton_value_key(name), :pool_name => options[:redis])
      )
  end

  after_destroy { send(name).clear } if respond_to?(:after_destroy)
end