lib/daijobu/adapters/mem_cache.rb in sander6-daijobu-0.2.0 vs lib/daijobu/adapters/mem_cache.rb in sander6-daijobu-0.2.1

- old
+ new

@@ -1,30 +1,37 @@ module Daijobu module Adapter + # Daijobu::Adapter::MemCacheAdapter wraps getting and setting to a MemCache store. + # Note that you can use MemCache to talk to a Tokyo Tyrant server, since they + # speak the same language. class MemCacheAdapter + # Daijobu::Adapter::MemCacheAdapter.new takes a MemCache object. def initialize(store) @store = store end + # Gets the key or keys given. Multiple values will be returned in a hash. def get(*keys) if keys.size == 0 nil elsif keys.size == 1 get_one(keys.first) else keys.inject({}) { |agg, key| agg.merge(key => get_one(key)) } end end + # Sets the key to the given value (using MemCache#add). def set(key, value) @store.add(key, value, 0, true) end private + # Gets a single key. Used internally. def get_one(key) @store.get(key, true) end end \ No newline at end of file