Class: TrailGuide::Adapters::Experiments::Redis
- Inherits:
-
Object
- Object
- TrailGuide::Adapters::Experiments::Redis
- Defined in:
- lib/trail_guide/adapters/experiments/redis.rb
Instance Attribute Summary collapse
-
#experiment ⇒ Object
readonly
Returns the value of attribute experiment.
Instance Method Summary collapse
- #delete(attr) ⇒ Object
- #destroy ⇒ Object
- #exists?(attr) ⇒ Boolean
- #get(attr) ⇒ Object
-
#initialize(experiment, redis: nil) ⇒ Redis
constructor
A new instance of Redis.
- #persisted? ⇒ Boolean
- #redis ⇒ Object
- #set(attr, val) ⇒ Object
- #setnx(attr, val) ⇒ Object
Constructor Details
#initialize(experiment, redis: nil) ⇒ Redis
Returns a new instance of Redis.
8 9 10 11 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 8 def initialize(experiment, redis: nil) @experiment = experiment @redis = redis end |
Instance Attribute Details
#experiment ⇒ Object (readonly)
Returns the value of attribute experiment.
5 6 7 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 5 def experiment @experiment end |
Instance Method Details
#delete(attr) ⇒ Object
30 31 32 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 30 def delete(attr) redis.hdel(storage_key, attr.to_s) end |
#destroy ⇒ Object
42 43 44 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 42 def destroy redis.del(storage_key) end |
#exists?(attr) ⇒ Boolean
34 35 36 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 34 def exists?(attr) redis.hexists(storage_key, attr.to_s) end |
#get(attr) ⇒ Object
17 18 19 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 17 def get(attr) redis.hget(storage_key, attr.to_s) end |
#persisted? ⇒ Boolean
38 39 40 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 38 def persisted? redis.exists(storage_key) end |
#redis ⇒ Object
13 14 15 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 13 def redis @redis ||= TrailGuide.redis end |
#set(attr, val) ⇒ Object
21 22 23 24 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 21 def set(attr, val) redis.hset(storage_key, attr.to_s, val.to_s) val.to_s end |
#setnx(attr, val) ⇒ Object
26 27 28 |
# File 'lib/trail_guide/adapters/experiments/redis.rb', line 26 def setnx(attr, val) val.to_s if redis.hsetnx(storage_key, attr.to_s, val.to_s) end |