class RedisRds::Composite

Attributes

members[R]

Public Class Methods

new(key) click to toggle source
# File lib/redis_rds/composite.rb, line 8
def initialize(key)
  @key = key
  @members = {}.with_indifferent_access
end

Public Instance Methods

add(key, klass) click to toggle source
# File lib/redis_rds/composite.rb, line 13
def add(key, klass)
  object = klass.new(format_member_key(key))
  @members[key] = object
end
clear() click to toggle source
# File lib/redis_rds/composite.rb, line 30
def clear
  @members.each do |k, _|
    self.delete(k)
  end
  @members.clear
end
delete(key) click to toggle source
# File lib/redis_rds/composite.rb, line 23
def delete(key)
  if @members.key?(key)
    @members[key].delete
    @members.delete(key)
  end
end
method_missing(*args) click to toggle source
# File lib/redis_rds/composite.rb, line 37
def method_missing(*args)
  result = nil

  key = args.first
  result = @members[key] if key.present?

  return result
end

Private Instance Methods

format_member_key(key) click to toggle source
# File lib/redis_rds/composite.rb, line 18
def format_member_key(key)
  return "#{@key}:#{key}"
end