Class: Memcached::Rails
A legacy compatibility wrapper for the Memcached class. It has basic compatibility with the memcache-client API.
Aliases
| Old name | New name |
|---|---|
| set_servers | servers= |
| flush | flush_all |
Attributes
| Name | Read/write? |
|---|---|
| logger | R |
Public Class Methods
new (*args)
See Memcached#new for details.
# File lib/memcached/rails.rb, line 17 17: def initialize(*args) 18: opts = args.last.is_a?(Hash) ? args.pop : {} 19: servers = Array( 20: args.any? ? args.unshift : opts.delete(:servers) 21: ).flatten.compact 22: 23: opts[:prefix_key] ||= opts[:namespace] 24: @logger = opts[:logger] 25: logger.info { "memcached #{VERSION} #{servers.inspect}" } if logger 26: super(servers, opts) 27: end
Public Instance Methods
"[]" (key, raw=false)
Alias for get
add (key, value, ttl=@default_ttl, raw=false)
Wraps Memcached#add so that it doesn‘t raise.
# File lib/memcached/rails.rb, line 72 72: def add(key, value, ttl=@default_ttl, raw=false) 73: super(key, value, ttl, !raw) 74: true 75: rescue NotStored 76: false 77: end
append (*args)
Wraps Memcached#append so that it doesn‘t raise.
# File lib/memcached/rails.rb, line 98 98: def append(*args) 99: super 100: rescue NotStored 101: end
cas (key, ttl=@default_ttl, raw=false, &block)
Wraps Memcached#cas so that it doesn‘t raise. Doesn‘t set anything if no value is present.
# File lib/memcached/rails.rb, line 47 47: def cas(key, ttl=@default_ttl, raw=false, &block) 48: super(key, ttl, !raw, &block) 49: rescue NotFound 50: end
decr (*args)
Wraps Memcached#decr so that it doesn‘t raise.
# File lib/memcached/rails.rb, line 92 92: def decr(*args) 93: super 94: rescue NotFound 95: end
delete (key, expiry=0)
Wraps Memcached#delete so that it doesn‘t raise.
# File lib/memcached/rails.rb, line 80 80: def delete(key, expiry=0) 81: super(key) 82: rescue NotFound 83: end
get (key, raw=false)
Wraps Memcached#get so that it doesn‘t raise. This has the side-effect of preventing you from storing nil values.
# File lib/memcached/rails.rb, line 35 35: def get(key, raw=false) 36: super(key, !raw) 37: rescue NotFound 38: end
get_multi (keys, raw=false)
Wraps Memcached#get.
# File lib/memcached/rails.rb, line 55 55: def get_multi(keys, raw=false) 56: get_orig(keys, !raw) 57: end
incr (*args)
Wraps Memcached#incr so that it doesn‘t raise.
# File lib/memcached/rails.rb, line 86 86: def incr(*args) 87: super 88: rescue NotFound 89: end
logger= (logger)
# File lib/memcached/rails.rb, line 29 29: def logger=(logger) 30: @logger = logger 31: end
prepend (*args)
Wraps Memcached#prepend so that it doesn‘t raise.
# File lib/memcached/rails.rb, line 104 104: def prepend(*args) 105: super 106: rescue NotStored 107: end
read (key, options = {})
Alternative to get. Accepts a key and an optional options hash supporting the single option :raw.
# File lib/memcached/rails.rb, line 42 42: def read(key, options = {}) 43: get(key, options[:raw]) 44: end
set (key, value, ttl=@default_ttl, raw=false)
Wraps Memcached#set.
# File lib/memcached/rails.rb, line 60 60: def set(key, value, ttl=@default_ttl, raw=false) 61: super(key, value, ttl, !raw) 62: end
write (key, value, options = {})
Alternative to set. Accepts a key, value, and an optional options hash supporting the options :raw and :ttl.
# File lib/memcached/rails.rb, line 66 66: def write(key, value, options = {}) 67: set(key, value, options[:ttl] || @default_ttl, options[:raw]) 68: true 69: end