class Stacks::Backends::NamespacedBackend

Attributes

namespace[RW]

Public Instance Methods

backend_key() click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 7
def backend_key
  "n"
end
clear_cache() click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 31
def clear_cache
  Stacks.redis.del(prefix_key)
end
del(item) click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 43
def del(item)
  del_key(suffix_key(item))
end
del_key(key) click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 39
def del_key(key)
  Stacks.redis.hdel(prefix_key, key)
end
expire(item, ttl) click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 27
def expire(item, ttl)
  Stacks.redis.expire(prefix_key, ttl)
end
get(item) click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 15
def get(item)
  potential_value = Stacks.redis.hget(prefix_key, suffix_key(item))
  raise Stacks::NoValueException unless potential_value
  return Marshal.load(potential_value) if potential_value
end
keys() click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 35
def keys
  Stacks.redis.hkeys(prefix_key)
end
prefix_keys() click to toggle source
Calls superclass method Stacks::Backends::Backend#prefix_keys
# File lib/stacks/backends/namespaced_backend.rb, line 11
def prefix_keys
  super << @namespace
end
set(item) click to toggle source
# File lib/stacks/backends/namespaced_backend.rb, line 21
def set(item)
  value = item.value
  Stacks.redis.hset(prefix_key, suffix_key(item), Marshal.dump(value))
  value
end