Class: Prefatory::Storage::RedisProvider
- Inherits:
-
Object
- Object
- Prefatory::Storage::RedisProvider
- Defined in:
- lib/prefatory/storage/redis_provider.rb
Instance Method Summary collapse
- #delete(key) ⇒ Object
- #get(key) ⇒ Object
-
#initialize(options = nil, ttl = Prefatory.config.ttl, key_generator: Prefatory.config.keys.generator.new(Prefatory.config.keys.prefix), marshaler: Prefatory.config.storage.marshaler) ⇒ RedisProvider
constructor
A new instance of RedisProvider.
- #key?(key) ⇒ Boolean
- #next_key(obj = nil) ⇒ Object
- #set(key, value, ttl = nil) ⇒ Object
Constructor Details
#initialize(options = nil, ttl = Prefatory.config.ttl, key_generator: Prefatory.config.keys.generator.new(Prefatory.config.keys.prefix), marshaler: Prefatory.config.storage.marshaler) ⇒ RedisProvider
Returns a new instance of RedisProvider.
6 7 8 9 10 11 12 13 14 |
# File 'lib/prefatory/storage/redis_provider.rb', line 6 def initialize(=nil, ttl=Prefatory.config.ttl, key_generator: Prefatory.config.keys.generator.new(Prefatory.config.keys.prefix), marshaler: Prefatory.config.storage.marshaler) = default_settings() @ttl = ttl @key_generator = key_generator @marshaler = marshaler @client = ? Redis.new() : Redis.current end |
Instance Method Details
#delete(key) ⇒ Object
25 26 27 |
# File 'lib/prefatory/storage/redis_provider.rb', line 25 def delete(key) @client.del(prefix(key)) end |
#get(key) ⇒ Object
20 21 22 23 |
# File 'lib/prefatory/storage/redis_provider.rb', line 20 def get(key) value = @client.get(prefix(key)) value ? @marshaler.load(value) : value end |
#key?(key) ⇒ Boolean
29 30 31 |
# File 'lib/prefatory/storage/redis_provider.rb', line 29 def key?(key) @client.exists(prefix(key)) end |
#next_key(obj = nil) ⇒ Object
33 34 35 |
# File 'lib/prefatory/storage/redis_provider.rb', line 33 def next_key(obj=nil) @key_generator.key(obj) end |
#set(key, value, ttl = nil) ⇒ Object
16 17 18 |
# File 'lib/prefatory/storage/redis_provider.rb', line 16 def set(key, value, ttl=nil) @client.set(prefix(key), @marshaler.dump(value), ex: ttl||@ttl) end |