Class: Moneta::Adapters::Redis
- Inherits:
-
Base
- Object
- Base
- Moneta::Adapters::Redis
show all
- Defined in:
- lib/moneta/adapters/redis.rb
Overview
Instance Method Summary
collapse
Methods inherited from Base
#[], #[]=, #close, #decrement, #fetch
#expires, #prefix, #raw, #with
Constructor Details
#initialize(options = {}) ⇒ Redis
13
14
15
16
|
# File 'lib/moneta/adapters/redis.rb', line 13
def initialize(options = {})
@expires = options.delete(:expires)
@redis = ::Redis.new(options)
end
|
Instance Method Details
#clear(options = {}) ⇒ Object
60
61
62
63
|
# File 'lib/moneta/adapters/redis.rb', line 60
def clear(options = {})
@redis.flushdb
self
end
|
#delete(key, options = {}) ⇒ Object
46
47
48
49
50
51
|
# File 'lib/moneta/adapters/redis.rb', line 46
def delete(key, options = {})
if value = load(key, options)
@redis.del(key)
value
end
end
|
#increment(key, amount = 1, options = {}) ⇒ Object
53
54
55
56
57
58
|
# File 'lib/moneta/adapters/redis.rb', line 53
def increment(key, amount = 1, options = {})
value = @redis.incrby(key, amount)
expires = (options[:expires] || @expires)
@redis.expire(key, expires) if expires
value
end
|
#key?(key, options = {}) ⇒ Boolean
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/moneta/adapters/redis.rb', line 18
def key?(key, options = {})
if @redis.exists(key)
if expires = options[:expires]
@redis.expire(key, expires)
end
true
else
false
end
end
|
#load(key, options = {}) ⇒ Object
29
30
31
32
33
34
35
|
# File 'lib/moneta/adapters/redis.rb', line 29
def load(key, options = {})
value = @redis.get(key)
if value && (expires = options[:expires])
@redis.expire(key, expires)
end
value
end
|
#store(key, value, options = {}) ⇒ Object
37
38
39
40
41
42
43
44
|
# File 'lib/moneta/adapters/redis.rb', line 37
def store(key, value, options = {})
if expires = (options[:expires] || @expires)
@redis.setex(key, expires, value)
else
@redis.set(key, value)
end
value
end
|