Class: Waves::Caches::Memcached
- Defined in:
- lib/caches/memcached.rb
Instance Method Summary collapse
- #clear ⇒ Object
- #delete(key) ⇒ Object
- #fetch(key) ⇒ Object
-
#initialize(args) ⇒ Memcached
constructor
A new instance of Memcached.
- #store(key, value, ttl = 0, marshal = true) ⇒ Object
Methods inherited from Simple
Constructor Details
#initialize(args) ⇒ Memcached
Returns a new instance of Memcached.
6 7 8 9 |
# File 'lib/caches/memcached.rb', line 6 def initialize( args ) raise ArgumentError, ":servers is nil" if args[ :servers ].nil? @cache = ::Memcached.new( args[ :servers ], args[ :options ] || {} ) end |
Instance Method Details
#clear ⇒ Object
25 26 27 |
# File 'lib/caches/memcached.rb', line 25 def clear cache = @cache.clone; cache.flush; cache.destroy end |
#delete(key) ⇒ Object
21 22 23 |
# File 'lib/caches/memcached.rb', line 21 def delete( key ) cache = @cache.clone; cache.delete( key.to_s ); cache.destroy end |
#fetch(key) ⇒ Object
15 16 17 18 19 |
# File 'lib/caches/memcached.rb', line 15 def fetch( key ) cache = @cache.clone; cache.get( key.to_s ); cache.destroy rescue ::Memcached::NotFound => e nil end |
#store(key, value, ttl = 0, marshal = true) ⇒ Object
11 12 13 |
# File 'lib/caches/memcached.rb', line 11 def store( key,value, ttl = 0, marshal = true ) cache = @cache.clone; cache.add( key.to_s, value, ttl, marshal ); cache.destroy end |