module Garner::Mixins::Rack
Public Instance Methods
cache_enabled?()
click to toggle source
Override this method to conditionally disable the cache.
@return [Boolean]
# File lib/garner/mixins/rack.rb, line 9 def cache_enabled? true end
garner(&block)
click to toggle source
Instantiate a context-appropriate cache identity.
@example
garner.bind(current_user) do { count: current_user.logins.count } end
@return [Garner::Cache::Identity] The cache identity.
# File lib/garner/mixins/rack.rb, line 20 def garner(&block) identity = Garner::Cache::Identity.new(self) Garner.config.rack_context_key_strategies.each do |strategy| identity = strategy.apply(identity, self) end identity = identity.nocache unless cache_enabled? block_given? ? identity.fetch(&block) : identity end