Sha256: c9165a6256bd6ca3e750c44552c13607da2b3179039f92be520e3adae9d9fb61
Contents?: true
Size: 1.17 KB
Versions: 3
Compression:
Stored size: 1.17 KB
Contents
class Redis class Store < self module Namespace def set(key, val, options = nil) namespace(key) { |key| super(key, val, options) } end def setnx(key, val, options = nil) namespace(key) { |key| super(key, val, options) } end def get(key, options = nil) namespace(key) { |key| super(key, options) } end def exists(key) namespace(key) { |key| super(key) } end def incrby(key, increment) namespace(key) { |key| super(key, increment) } end def decrby(key, increment) namespace(key) { |key| super(key, increment) } end def keys(pattern = "*") namespace(pattern) { |pattern| super(pattern) } end def del(*keys) super *keys.map {|key| interpolate(key) } end def mget(*keys) super *keys.map {|key| interpolate(key) } end def to_s "#{super} with namespace #{@namespace}" end private def namespace(key) yield interpolate(key) end def interpolate(key) key.match(%r{^#{@namespace}\:}) ? key : "#{@namespace}:#{key}" end end end end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
redis-store-1.0.0.beta4 | lib/redis/store/namespace.rb |
nono-redis-store-1.0.0 | lib/redis/store/namespace.rb |
redis-store-1.0.0.beta3 | lib/redis/store/namespace.rb |