module Sequel::Plugins::Caching::ClassMethods

  1. lib/sequel/plugins/caching.rb
Parent: Caching

Attributes

cache_ignore_exceptions [R]

If true, ignores exceptions when gettings cached records (the memcached API).

cache_store [R]

The cache store object for the model, which should implement the Ruby-Memcache (or memcached) API

cache_ttl [R]

The time to live for the cache store, in seconds.

Public Instance methods

cache_delete_pk (pk)

Delete the cached object with the given primary key.

[show source]
# File lib/sequel/plugins/caching.rb, line 57
def cache_delete_pk(pk)
  cache_delete(cache_key(pk))
end
cache_get_pk (pk)

Return the cached object with the given primary key, or nil if no such object is in the cache.

[show source]
# File lib/sequel/plugins/caching.rb, line 63
def cache_get_pk(pk)
  cache_get(cache_key(pk))
end
cache_key (pk)

Return a key string for the given primary key.

[show source]
# File lib/sequel/plugins/caching.rb, line 68
def cache_key(pk)
  raise(Error, 'no primary key for this record') unless pk.is_a?(Array) ? pk.all? : pk
  "#{self}:#{Array(pk).join(',')}"
end
set_cache_ttl (ttl)

Set the time to live for the cache store, in seconds (default is 3600, # so 1 hour).

[show source]
# File lib/sequel/plugins/caching.rb, line 76
def set_cache_ttl(ttl)
  @cache_ttl = ttl
end