class Rack::PageCaching::Environment
Public Class Methods
new(options = {})
click to toggle source
# File lib/rack/page_caching/environment.rb, line 4 def initialize(options = {}) @options = options set_defaults end
Public Instance Methods
enabled?()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 21 def enabled? @options[:enable] end
include_hostname?()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 17 def include_hostname? @options[:include_hostname] end
instrument(name, path) { || ... }
click to toggle source
# File lib/rack/page_caching/environment.rb, line 25 def instrument(name, path) if defined? ActiveSupport::Notifications ActiveSupport::Notifications.instrument("#{name}.action_controller", path: path) do yield end else yield end end
page_cache_compression()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 9 def page_cache_compression @options[:page_cache_compression] end
page_cache_directory()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 13 def page_cache_directory @options[:page_cache_directory] end
Private Instance Methods
normalize_values()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 43 def normalize_values @options.merge!( page_cache_compression: Rack::PageCaching::Utils.gzip_level( @options[:page_cache_compression]), page_cache_directory: @options[:page_cache_directory].to_s, ) end
set_defaults()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 37 def set_defaults set_rails_defaults if defined? ::Rails normalize_values toggle_caching end
set_rails_defaults()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 56 def set_rails_defaults @options = { page_cache_directory: ::Rails.root.join('public'), enable: ::Rails.application.config.action_controller.perform_caching }.merge(@options) end
toggle_caching()
click to toggle source
# File lib/rack/page_caching/environment.rb, line 51 def toggle_caching @options[:enable] = false if @options[:page_cache_directory].strip == '' @options[:enable] = true unless @options.has_key?(:enable) end