class Phishin::Client::RedisCache
Public Class Methods
new(opts={})
click to toggle source
# File lib/phishin/client/cache.rb, line 80 def initialize(opts={}) opts ||= {} @expires_in = opts.delete(:expires_in) url = opts.delete(:url) @client = Redis.new(url: url) cli = @client.client ::Phishin::Client::Client.logger.info "initialized phish.in cache Redis client redis://:REDACTED@#{cli.host}:#{cli.port}/#{cli.db}" if ::Phishin::Client::Client.logger end
Public Instance Methods
delete(key)
click to toggle source
# File lib/phishin/client/cache.rb, line 98 def delete(key) @client.del(namespace_key(key)) end
get(key)
click to toggle source
# File lib/phishin/client/cache.rb, line 89 def get(key) @client.get(namespace_key(key)) end
set(key, value, ttl=nil)
click to toggle source
# File lib/phishin/client/cache.rb, line 93 def set(key, value, ttl=nil) ttl ||= @expires_in @client.set(namespace_key(key), value, { ex: ttl }) end
Private Instance Methods
namespace_key(key)
click to toggle source
# File lib/phishin/client/cache.rb, line 104 def namespace_key(key) format('%s:%s', Cache::CACHE_NAMESPACE, key) end