Class: RedisModel::Intersected
- Defined in:
- lib/redis_model/intersected.rb
Instance Attribute Summary collapse
-
#key_label ⇒ Object
readonly
Returns the value of attribute key_label.
Instance Method Summary collapse
- #generate(expire_in = nil) ⇒ Object
-
#initialize(sets, seed = rand(256)) ⇒ Intersected
constructor
A new instance of Intersected.
Methods inherited from Base
connection, custom_key_label, data_type, redis_model_schema, #to_value
Constructor Details
#initialize(sets, seed = rand(256)) ⇒ Intersected
Returns a new instance of Intersected.
7 8 9 10 |
# File 'lib/redis_model/intersected.rb', line 7 def initialize(sets, seed = rand(256)) @sets = sets @key_label = (@sets.map(&:key_label) + [DateTime.current.to_i, seed]).compact.join(':') end |
Instance Attribute Details
#key_label ⇒ Object (readonly)
Returns the value of attribute key_label.
3 4 5 |
# File 'lib/redis_model/intersected.rb', line 3 def key_label @key_label end |
Instance Method Details
#generate(expire_in = nil) ⇒ Object
12 13 14 15 |
# File 'lib/redis_model/intersected.rb', line 12 def generate(expire_in = nil) RedisModel::Base.connection.zinterstore @key_label, @sets.map(&:key_label) RedisModel::Base.connection.expire(@key_label, expire_in) if expire_in end |