class RedisCacheUtil
Public Class Methods
delete(type, key)
click to toggle source
Calls superclass method
CacheUtil::delete
# File lib/cache_driver/redis_cache_util.rb, line 55 def delete(type, key) super type, key res = redis.del("#{namespace}:#{type_to_dir(type)}##{key}") res == 1 end
read(type, key)
click to toggle source
Calls superclass method
CacheUtil::read
# File lib/cache_driver/redis_cache_util.rb, line 11 def read(type, key) super type, key content = redis.get("#{namespace}:#{type_to_dir(type)}##{key}") unless content puts "cache #{type} ##{key} data miss" return nil end data_str = content.split(" --> ")[1] unless data_str puts "cache #{type} ##{key} data miss" return nil end data = JSON.parse data_str type_to_class(type).from_cache data end
read_all(type)
click to toggle source
Calls superclass method
CacheUtil::read_all
# File lib/cache_driver/redis_cache_util.rb, line 30 def read_all(type) super type r = redis data = [] r.keys("#{namespace}:#{type_to_dir(type)}#*").each do |key| content = r.get(key) unless content puts "cache #{key} data miss" next end data_str = content.split(" --> ")[1] unless data_str puts "cache #{key} data miss" next end d = JSON.parse data_str data << type_to_class(type).from_cache(d) end data end
write(type, key, data)
click to toggle source
Calls superclass method
CacheUtil::write
# File lib/cache_driver/redis_cache_util.rb, line 4 def write(type, key, data) super type, key, data res = redis.set "#{namespace}:#{type_to_dir(type)}##{key}", "#{Time.now} --> #{data.to_cache.to_json}" res == "OK" ? key : nil end
Private Class Methods
namespace()
click to toggle source
# File lib/cache_driver/redis_cache_util.rb, line 67 def namespace CacheDriver.config.redis_namespace end
redis()
click to toggle source
# File lib/cache_driver/redis_cache_util.rb, line 63 def redis Redis.new :host => CacheDriver.config.redis_host, :port => CacheDriver.config.redis_port end