class AboutYou::SDK::CacheProvider::Redis
This class is used as an interface for cache operations. It is used when caching with Redis
.
- author
-
Collins GmbH & Co KG
Attributes
an instance of the cache client.
Public Class Methods
the Constructor for the Redis
class
-
Args :
-
client
-> an instance ofRedis
-
-
Returns :
-
Instance of
AboutYou::SDK::CacheProvider::Redis
-
# File lib/AboutYou/CacheProvider/redis.rb, line 25 def initialize(client) self.client = client end
Public Instance Methods
This method is used for deleting cache entries with Redis
.
-
Args :
-
key
-> The key of the cache entry
-
-
Returns :
-
True/False determining whether the deletion was successful or not
-
# File lib/AboutYou/CacheProvider/redis.rb, line 68 def delete(key) client.del(key) end
This method is used for checking whether a cache entry exists or not with Redis
.
-
Args :
-
key
-> The key of the cache entry
-
-
Returns :
-
True/False determining whether the key exists in the cache or not
-
# File lib/AboutYou/CacheProvider/redis.rb, line 81 def exists(key) client.exists(key) end
This method is used for getting cache entries with Redis
.
-
Args :
-
key
-> The key of the cache entry
-
-
Returns :
-
Either the value for the given key or nil if the key was not found
-
# File lib/AboutYou/CacheProvider/redis.rb, line 55 def get(key) JSON.parse(client.get(key)) end
This method is used for setting new cache entries with Redis
.
-
Args :
-
key
-> The key of the cache entry -
value
-> The value of the cache entry -
duration
-> the duration of the cache entry
-
-
Returns :
-
True/False determining whether the setting was successful of not
-
# File lib/AboutYou/CacheProvider/redis.rb, line 40 def set(key, value, duration) value = value.to_json unless value.is_a?(String) client.set(key, value) client.expire(key, duration) end