module Golden::Setting::Cache::ClassMethods

Public Instance Methods

[](name) click to toggle source
Calls superclass method
# File lib/golden/setting/cache.rb, line 28
def [] name
  obj = fetch_cache(name) { super(name) }
  obj || defaults[name.to_sym]
end
[]=(name, value) click to toggle source
Calls superclass method
# File lib/golden/setting/cache.rb, line 33
def []= name, value
  if self[name] != value
    super name, value
  end
end
delete_cache(name) click to toggle source
# File lib/golden/setting/cache.rb, line 24
def delete_cache name
  ::Rails.cache.delete "setting:#{name}"
end
fetch_cache(name) { || ... } click to toggle source
# File lib/golden/setting/cache.rb, line 12
def fetch_cache name
  if block_given?
    ::Rails.cache.fetch("setting:#{name}") { yield }
  else
    ::Rails.cache.fetch "setting:#{name}"
  end
end
is_true?(name) click to toggle source
Calls superclass method
# File lib/golden/setting/cache.rb, line 39
def is_true? name
  fetch_cache("#{name}?") { super(name) }
end
rewrite_cache(name, value) click to toggle source
# File lib/golden/setting/cache.rb, line 20
def rewrite_cache name, value
  ::Rails.cache.write "setting:#{name}", value
end