module Speedup

Constants

VERSION

Public Class Methods

adapter() click to toggle source
# File lib/speedup-rails.rb, line 10
def self.adapter
  @adapter
end
adapter=(*adapter_options) click to toggle source
# File lib/speedup-rails.rb, line 14
def self.adapter=(*adapter_options)
  adapter, *parameters = *Array.wrap(adapter_options).flatten

  @adapter = case adapter
  when Symbol
    adapter_class_name = adapter.to_s.camelize
    adapter_class =
      begin
        require "speedup/adapters/#{adapter}"
      rescue LoadError => e
        raise "Could not find adapter for #{adapter} (#{e})"
      else
        Speedup::Adapters.const_get(adapter_class_name)
      end
    adapter_class.new(*parameters)
  when nil
    Speedup::Adapters::Memory.new
  else
    adapter
  end

  @adapter
end
automount=(value) click to toggle source
# File lib/speedup-rails.rb, line 85
def self.automount=(value)
  @automount = !!value
end
automount?() click to toggle source
# File lib/speedup-rails.rb, line 89
def self.automount?
  !!@automount
end
collector_options() click to toggle source
# File lib/speedup-rails.rb, line 55
def self.collector_options
  @collector_options ||= {}
end
collectors() click to toggle source
# File lib/speedup-rails.rb, line 105
def self.collectors
  @collectors
end
collectors=(collectors) click to toggle source
# File lib/speedup-rails.rb, line 59
def self.collectors=(collectors)
  collector_names = Array.wrap(collectors).map do |collector|
    if collector.is_a?(Hash)
      collector_name = collector.keys.first
      collector_options[collector_name] = collector[collector_name]
      collector_name
    else
      collector
    end
  end.uniq

  @collector_classes = collector_names.map do |collector_name|
    collector_class_name = collector_name.to_s.camelize + 'Collector'
    require "speedup/collectors/#{collector_name}_collector"
    Speedup::Collectors.const_get(collector_class_name)
  end
end
css() click to toggle source
# File lib/speedup-rails.rb, line 97
def self.css
  @css || {}
end
css=(value) click to toggle source
# File lib/speedup-rails.rb, line 93
def self.css=(value)
  @css = value
end
enabled?() click to toggle source
# File lib/speedup-rails.rb, line 38
def self.enabled?
  # ['development', 'staging'].include?(Rails.env)
  !@temporary_disabled && !defined?(Rails::Console) && File.basename($0) != "rake"
end
prepare_collectors() click to toggle source
# File lib/speedup-rails.rb, line 101
def self.prepare_collectors
  @collectors = @collector_classes.map{|col_kls| col_kls.new(collector_options[col_kls.key] || {}) }
end
profile(&block) click to toggle source
# File lib/speedup-rails.rb, line 109
def self.profile(&block)
  @rubyprof ||= @collectors.detect{|c| c.key == :rubyprof}
  raise "You need to enable rubyprof collector to profile!" unless @rubyprof
  @rubyprof.profile(&block)
end
request() click to toggle source
# File lib/speedup-rails.rb, line 51
def self.request
  Thread.current[:speedup_rails]
end
setup_request(request_id) click to toggle source
# File lib/speedup-rails.rb, line 47
def self.setup_request(request_id)
  Thread.current[:speedup_rails] = Speedup::Request.new(request_id)
end
show_bar=(value) click to toggle source
# File lib/speedup-rails.rb, line 77
def self.show_bar=(value)
  @show_bar = !!value
end
show_bar?() click to toggle source
# File lib/speedup-rails.rb, line 81
def self.show_bar?
  !!@show_bar
end
temporary_disabled=(val) click to toggle source
# File lib/speedup-rails.rb, line 43
def self.temporary_disabled=(val)
  @temporary_disabled = !!val
end