Class | Rack::Cache::EntityStore::MemCached |
In: |
lib/rack/cache/entitystore.rb
|
Parent: | MemCacheBase |
Uses the memcached client library. The ruby based memcache-client is used in preference to this store unless the memcached library has already been required.
# File lib/rack/cache/entitystore.rb, line 246 246: def initialize(server="localhost:11211", options={}) 247: options[:prefix_key] ||= options.delete(:namespace) if options.key?(:namespace) 248: @cache = 249: if server.respond_to?(:stats) 250: server 251: else 252: require 'memcached' 253: ::Memcached.new(server, options) 254: end 255: end
# File lib/rack/cache/entitystore.rb, line 257 257: def exist?(key) 258: cache.append(key, '') 259: true 260: rescue ::Memcached::NotStored 261: false 262: end
# File lib/rack/cache/entitystore.rb, line 277 277: def purge(key) 278: cache.delete(key) 279: nil 280: rescue ::Memcached::NotFound 281: nil 282: end
# File lib/rack/cache/entitystore.rb, line 264 264: def read(key) 265: cache.get(key, false) 266: rescue ::Memcached::NotFound 267: nil 268: end