Module: Speedup
- Defined in:
- lib/speedup-rails.rb,
lib/speedup/request.rb,
lib/speedup/version.rb,
lib/speedup/middleware.rb,
lib/speedup/controller_helpers.rb,
lib/speedup/collectors/collector.rb,
lib/speedup/collectors/bullet_collector.rb,
lib/speedup/collectors/queries_collector.rb,
lib/speedup/collectors/request_collector.rb,
lib/speedup/collectors/partials_collector.rb,
lib/speedup/collectors/rubyprof_collector.rb,
lib/speedup/collectors/miniprofiler_collector.rb
Defined Under Namespace
Modules: Collectors, ControllerHelpers
Classes: Middleware, Request
Constant Summary
collapse
- VERSION =
"0.0.15"
Class Method Summary
collapse
Class Method Details
.adapter ⇒ Object
10
11
12
|
# File 'lib/speedup-rails.rb', line 10
def self.adapter
@adapter
end
|
.adapter=(*adapter_options) ⇒ Object
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# 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) ⇒ Object
85
86
87
|
# File 'lib/speedup-rails.rb', line 85
def self.automount=(value)
@automount = !!value
end
|
.automount? ⇒ Boolean
89
90
91
|
# File 'lib/speedup-rails.rb', line 89
def self.automount?
!!@automount
end
|
.collector_options ⇒ Object
55
56
57
|
# File 'lib/speedup-rails.rb', line 55
def self.collector_options
@collector_options ||= {}
end
|
.collectors ⇒ Object
105
106
107
|
# File 'lib/speedup-rails.rb', line 105
def self.collectors
@collectors
end
|
.collectors=(collectors) ⇒ Object
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# 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 ⇒ Object
97
98
99
|
# File 'lib/speedup-rails.rb', line 97
def self.css
@css || {}
end
|
.css=(value) ⇒ Object
93
94
95
|
# File 'lib/speedup-rails.rb', line 93
def self.css=(value)
@css = value
end
|
.enabled? ⇒ Boolean
38
39
40
41
|
# File 'lib/speedup-rails.rb', line 38
def self.enabled?
!@temporary_disabled && !defined?(Rails::Console) && File.basename($0) != "rake"
end
|
.prepare_collectors ⇒ Object
101
102
103
|
# 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) ⇒ Object
109
110
111
112
113
|
# 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 ⇒ Object
51
52
53
|
# File 'lib/speedup-rails.rb', line 51
def self.request
Thread.current[:speedup_rails]
end
|
.setup_request(request_id) ⇒ Object
47
48
49
|
# 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) ⇒ Object
77
78
79
|
# File 'lib/speedup-rails.rb', line 77
def self.show_bar=(value)
@show_bar = !!value
end
|
.show_bar? ⇒ Boolean
81
82
83
|
# File 'lib/speedup-rails.rb', line 81
def self.show_bar?
!!@show_bar
end
|
.temporary_disabled=(val) ⇒ Object
43
44
45
|
# File 'lib/speedup-rails.rb', line 43
def self.temporary_disabled=(val)
@temporary_disabled = !!val
end
|