class Stormpath::Cache::MemcachedStore

Constants

DEFAULT_SERVER_HOST

Attributes

memcached[R]
options[R]

Public Class Methods

new(opts = {}) click to toggle source
   # File lib/stormpath-sdk/cache/memcached_store.rb
 9 def initialize(opts = {})
10   @options = opts.blank? ? { host: DEFAULT_SERVER_HOST } : opts
11   @memcached = Memcached.new(options[:host], options_without_host)
12 end

Public Instance Methods

clear() click to toggle source
   # File lib/stormpath-sdk/cache/memcached_store.rb
31 def clear
32   memcached.flush
33 end
delete(key) click to toggle source
   # File lib/stormpath-sdk/cache/memcached_store.rb
27 def delete(key)
28   memcached.delete(key)
29 end
get(key) click to toggle source
   # File lib/stormpath-sdk/cache/memcached_store.rb
14 def get(key)
15   begin
16     entry = memcached.get(key)
17     entry && Stormpath::Cache::CacheEntry.from_h(MultiJson.load(entry))
18   rescue Memcached::NotFound
19     nil
20   end
21 end
options_without_host() click to toggle source
   # File lib/stormpath-sdk/cache/memcached_store.rb
39 def options_without_host
40   options.tap { |hs| hs.delete(:host) }
41 end
put(key, entry) click to toggle source
   # File lib/stormpath-sdk/cache/memcached_store.rb
23 def put(key, entry)
24   memcached.set(key, MultiJson.dump(entry.to_h))
25 end
size() click to toggle source
   # File lib/stormpath-sdk/cache/memcached_store.rb
35 def size
36   memcached.stats[:curr_items]
37 end