Class: Frivol::Backend::Redis
- Inherits:
-
Object
- Object
- Frivol::Backend::Redis
- Defined in:
- lib/frivol/backend/redis.rb
Overview
Direct Known Subclasses
Instance Method Summary collapse
- #connection ⇒ Object
- #decr(key, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
- #decrby(key, amt, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
- #del(key) ⇒ Object (also: #delc)
- #exists(key) ⇒ Object (also: #existsc)
-
#expire(key, ttl) ⇒ Object
Expiry/TTL.
-
#flushdb ⇒ Object
Connection.
-
#get(key, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
(also: #getc)
Hashes.
-
#incr(key, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
Counters.
- #incrby(key, amt, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
-
#initialize(config) ⇒ Redis
constructor
:nodoc:.
- #set(key, val, expiry = Frivol::NEVER_EXPIRE) ⇒ Object (also: #setc)
- #ttl(key) ⇒ Object
Constructor Details
#initialize(config) ⇒ Redis
:nodoc:
14 15 16 |
# File 'lib/frivol/backend/redis.rb', line 14 def initialize(config) @config = config end |
Instance Method Details
#connection ⇒ Object
71 72 73 |
# File 'lib/frivol/backend/redis.rb', line 71 def connection Thread.current[thread_key] ||= ::Redis.new(@config) end |
#decr(key, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
44 45 46 |
# File 'lib/frivol/backend/redis.rb', line 44 def decr(key, expiry = Frivol::NEVER_EXPIRE) set_with_expiry(key, 1, expiry, :decrby) end |
#decrby(key, amt, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
52 53 54 |
# File 'lib/frivol/backend/redis.rb', line 52 def decrby(key, amt, expiry = Frivol::NEVER_EXPIRE) set_with_expiry(key, amt, expiry, :decrby) end |
#del(key) ⇒ Object Also known as: delc
29 30 31 |
# File 'lib/frivol/backend/redis.rb', line 29 def del(key) connection.del(key) end |
#exists(key) ⇒ Object Also known as: existsc
34 35 36 |
# File 'lib/frivol/backend/redis.rb', line 34 def exists(key) connection.exists(key) end |
#expire(key, ttl) ⇒ Object
Expiry/TTL
57 58 59 |
# File 'lib/frivol/backend/redis.rb', line 57 def expire(key, ttl) connection.expire(key, ttl) end |
#flushdb ⇒ Object
Connection
67 68 69 |
# File 'lib/frivol/backend/redis.rb', line 67 def flushdb connection.flushdb end |
#get(key, expiry = Frivol::NEVER_EXPIRE) ⇒ Object Also known as: getc
Hashes
19 20 21 |
# File 'lib/frivol/backend/redis.rb', line 19 def get(key, expiry = Frivol::NEVER_EXPIRE) connection.get(key) end |
#incr(key, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
Counters
40 41 42 |
# File 'lib/frivol/backend/redis.rb', line 40 def incr(key, expiry = Frivol::NEVER_EXPIRE) set_with_expiry(key, 1, expiry, :incrby) end |
#incrby(key, amt, expiry = Frivol::NEVER_EXPIRE) ⇒ Object
48 49 50 |
# File 'lib/frivol/backend/redis.rb', line 48 def incrby(key, amt, expiry = Frivol::NEVER_EXPIRE) set_with_expiry(key, amt, expiry, :incrby) end |
#set(key, val, expiry = Frivol::NEVER_EXPIRE) ⇒ Object Also known as: setc
24 25 26 |
# File 'lib/frivol/backend/redis.rb', line 24 def set(key, val, expiry = Frivol::NEVER_EXPIRE) set_with_expiry(key, val, expiry) end |
#ttl(key) ⇒ Object
61 62 63 64 |
# File 'lib/frivol/backend/redis.rb', line 61 def ttl(key) time = connection.ttl(key) time < 0 ? nil : time end |