Class: Zermelo::Filters::Redis
- Inherits:
-
Object
- Object
- Zermelo::Filters::Redis
- Includes:
- Zermelo::Filter
- Defined in:
- lib/zermelo/filters/redis.rb
Constant Summary collapse
- SHORTCUTS =
{ :list => { :ids => proc {|key| Zermelo::OrderedSet.new(Zermelo.redis.lrange(key, 0, -1)) }, :count => proc {|key| Zermelo.redis.llen(key) }, :exists? => proc {|key, id| Zermelo.redis.lrange(key, 0, -1).include?(id) }, :first => proc {|key| Zermelo.redis.lrange(key, 0, 0).first }, :last => proc {|key| Zermelo.redis.lrevrange(key, 0, 0).first } }, :set => { :ids => proc {|key| Set.new(Zermelo.redis.smembers(key)) }, :count => proc {|key| Zermelo.redis.scard(key) }, :exists? => proc {|key, id| Zermelo.redis.sismember(key, id) } }, :sorted_set => { :ids => proc {|key, order| Zermelo::OrderedSet.new(Zermelo.redis.send((:desc.eql?(order) ? :zrevrange : :zrange), key, 0, -1)) }, :count => proc {|key, order| Zermelo.redis.zcard(key) }, :exists? => proc {|key, order, id| !Zermelo.redis.zscore(key, id).nil? }, :first => proc {|key, order| Zermelo.redis.send((:desc.eql?(order) ? :zrevrange : :zrange), key, 0, 0).first }, :last => proc {|key, order| Zermelo.redis.send((:desc.eql?(order) ? :zrange : :zrevrange), key, 0, 0).first } } }
Instance Attribute Summary
Attributes included from Zermelo::Filter
Instance Method Summary collapse
-
#first ⇒ Object
more step users.
- #last ⇒ Object
Methods included from Zermelo::Filter
#all, #associated_ids_for, #associations_for, #collect, #count, #destroy_all, #diff, #each, #empty, #empty?, #exists?, #find_by_id, #find_by_id!, #find_by_ids, #find_by_ids!, #ids, #initialize, #intersect, #offset, #page, #reject, #select, #sort, #union
Instance Method Details
#first ⇒ Object
more step users
48 49 50 51 52 53 |
# File 'lib/zermelo/filters/redis.rb', line 48 def first lock { first_id = resolve_steps(:first) first_id.nil? ? nil : _load(first_id) } end |
#last ⇒ Object
55 56 57 58 59 60 |
# File 'lib/zermelo/filters/redis.rb', line 55 def last lock { last_id = resolve_steps(:last) last_id.nil? ? nil : _load(last_id) } end |