class Tr8n::CacheAdapters::Memory

Public Class Methods

cache() click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 35
def self.cache
  @cache ||= {}
end
clear_cache() click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 39
def self.clear_cache
  @cache = {}
end

Public Instance Methods

cache_name() click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 43
def cache_name
  'memory'
end
clear(opts = {}) click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 81
def clear(opts = {})
  self.class.clear_cache
end
delete(key, opts = {}) click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 73
def delete(key, opts = {})
  self.class.cache[key] = nil
end
exist?(key, opts = {}) click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 77
def exist?(key, opts = {})
  not self.class.cache[key].nil?
end
fetch(key, opts = {}) { || ... } click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 47
def fetch(key, opts = {})
  return yield if Tr8n.session.inline_mode?
  return yield unless Tr8n.cache.read_only?

  data = self.class.cache[key]

  if data
    info("Cache hit: #{key}")
    return data
  end

  info("Cache miss: #{key}")

  return nil unless block_given?

  data = yield

  store(key, data)

  data
end
store(key, data, opts = {}) click to toggle source
# File lib/tr8n/cache_adapters/memory.rb, line 69
def store(key, data, opts = {})
  self.class.cache[key] = data
end