class Renderful::Cache::Redis

Attributes

redis[R]

Public Class Methods

new(redis) click to toggle source
# File lib/renderful/cache/redis.rb, line 8
def initialize(redis)
  @redis = redis
end

Public Instance Methods

delete(*keys) click to toggle source
# File lib/renderful/cache/redis.rb, line 24
def delete(*keys)
  redis.del(*keys)
end
delete_matched(pattern) click to toggle source
# File lib/renderful/cache/redis.rb, line 28
def delete_matched(pattern)
  keys = redis.scan_each(match: pattern).to_a
  delete(*keys)
end
exist?(key) click to toggle source
# File lib/renderful/cache/redis.rb, line 12
def exist?(key)
  redis.exists(key)
end
fetch(key) { || ... } click to toggle source
# File lib/renderful/cache/redis.rb, line 33
def fetch(key)
  return read(key) if exist?(key)

  yield.tap do |value|
    write(key, value)
  end
read(key) click to toggle source
# File lib/renderful/cache/redis.rb, line 16
def read(key)
  redis.get(key)
end
write(key, value) click to toggle source
# File lib/renderful/cache/redis.rb, line 20
def write(key, value)
  redis.set(key, value)
end