Showing /home/rubys/.rvm/gems/ruby-2.2.4/gems/kaminari-0.16.3/app/views/kaminari/_paginator.html.erb where line #14 raised:
Generating a URL from non sanitized request parameters is insecure!
Extracted source (around line #176):
174
175
176
177
178
179
|
when ActionController::Parameters
unless options.permitted?
raise ArgumentError.new("Generating a URL from non sanitized request parameters is insecure!")
end
route_name = options.delete :use_route
_routes.url_for(options.to_h.symbolize_keys.
|
Extracted source (around line #96):
94
95
96
97
98
99
|
end
super(options)
when :back
_back_url
when Array
|
Extracted source (around line #8):
6
7
8
9
10
11
|
def url_for(options = {})
options = (controller.request.headers["X-XHR-Referer"] || options) if options == :back
super
end
end
|
Extracted source (around line #29):
27
28
29
30
31
32
|
def page_url_for(page)
@template.url_for @params.merge(@param_name => (page <= 1 ? nil : page), :only_path => true)
end
def partial_path
|
Extracted source (around line #50):
48
49
50
51
52
53
|
# the link's href
def url
page_url_for page
end
def to_s(locals = {}) #:nodoc:
super locals.merge(:url => url)
|
Extracted source (around line #53):
51
52
53
54
55
56
|
end
def to_s(locals = {}) #:nodoc:
super locals.merge(:url => url)
end
end
|
Extracted source (around line #65):
63
64
65
66
67
68
|
end
def to_s(locals = {}) #:nodoc:
super locals.merge(:page => page)
end
end
|
Extracted source (around line #12):
10
11
12
13
14
15
|
def <<(value)
return self if value.nil?
super(value.to_s)
end
alias :append= :<<
|
Extracted source (around line #14):
12
13
14
15
16
17
|
<%= prev_page_tag unless current_page.first? %>
<% each_page do |page| -%>
<% if page.left_outer? || page.right_outer? || page.inside_window? -%>
<%= page_tag page %>
<% elsif !page.was_truncated? -%>
<%= gap_tag %>
|
Extracted source (around line #53):
51
52
53
54
55
56
|
relevant_pages(@window_options).each do |page|
yield PageProxy.new(@window_options, page, @last)
end
end
alias each_page each_relevant_page
|
Extracted source (around line #52):
50
51
52
53
54
55
|
return to_enum(:each_relevant_page) unless block_given?
relevant_pages(@window_options).each do |page|
yield PageProxy.new(@window_options, page, @last)
end
end
|
Extracted source (around line #52):
50
51
52
53
54
55
|
return to_enum(:each_relevant_page) unless block_given?
relevant_pages(@window_options).each do |page|
yield PageProxy.new(@window_options, page, @last)
end
end
|
Extracted source (around line #12):
10
11
12
13
14
15
|
<nav class="pagination">
<%= first_page_tag unless current_page.first? %>
<%= prev_page_tag unless current_page.first? %>
<% each_page do |page| -%>
<% if page.left_outer? || page.right_outer? || page.inside_window? -%>
<%= page_tag page %>
|
Extracted source (around line #39):
37
38
39
40
41
42
|
# render given block as a view template
def render(&block)
instance_eval(&block) if @options[:total_pages] > 1
@output_buffer
end
|
Extracted source (around line #39):
37
38
39
40
41
42
|
# render given block as a view template
def render(&block)
instance_eval(&block) if @options[:total_pages] > 1
@output_buffer
end
|
Extracted source (around line #9):
7
8
9
10
11
12
|
paginator: the paginator that renders the pagination tags inside
-%>
<%= paginator.render do -%>
<nav class="pagination">
<%= first_page_tag unless current_page.first? %>
<%= prev_page_tag unless current_page.first? %>
|
Extracted source (around line #158):
156
157
158
159
160
161
|
instrument("!render_template".freeze) do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #166):
164
165
166
167
168
169
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #348):
346
347
348
349
350
351
|
case action
when "!render_template".freeze
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, payload, &block)
else
ActiveSupport::Notifications.instrument("#{action}.action_view".freeze, payload, &block)
end
|
Extracted source (around line #156):
154
155
156
157
158
159
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer=nil, &block)
instrument("!render_template".freeze) do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #343):
341
342
343
344
345
346
|
locals[as] = object if @has_object
content = @template.render(view, locals) do |*name|
view._layout_for(*name, &block)
end
|
Extracted source (around line #311):
309
310
311
312
313
314
|
else
instrument(:partial) do
render_partial
end
end
end
|
Extracted source (around line #42):
40
41
42
43
44
45
|
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #164):
162
163
164
165
166
167
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #21):
19
20
21
22
23
24
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #164):
162
163
164
165
166
167
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #41):
39
40
41
42
43
44
|
options[:identifier] ||= (@template && @template.identifier) || @path
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #310):
308
309
310
311
312
313
|
render_collection
else
instrument(:partial) do
render_partial
end
end
|
Extracted source (around line #47):
45
46
47
48
49
50
|
# Direct access to partial rendering.
def render_partial(context, options, &block) #:nodoc:
PartialRenderer.new(@lookup_context).render(context, options, block)
end
end
end
|
Extracted source (around line #21):
19
20
21
22
23
24
|
def render(context, options)
if options.key?(:partial)
render_partial(context, options)
else
render_template(context, options)
end
|
Extracted source (around line #32):
30
31
32
33
34
35
|
view_renderer.render_partial(self, options.merge(:partial => options[:layout]), &block)
else
view_renderer.render(self, options)
end
else
view_renderer.render_partial(self, :partial => options, :locals => locals, &block)
|
Extracted source (around line #12):
10
11
12
13
14
15
|
return non_haml { render_without_haml(*args, &block) }
end
render_without_haml(*args, &block)
end
alias_method :render_without_haml, :render
alias_method :render, :render_with_haml
|
Extracted source (around line #25):
23
24
25
26
27
28
|
def to_s(locals = {}) #:nodoc:
@template.render :partial => partial_path, :locals => @options.merge(locals), :formats => [:html]
end
def page_url_for(page)
|
Extracted source (around line #100):
98
99
100
101
102
103
|
subscriber.render_without_logging = true
ret = super @window_options.merge :paginator => self
subscriber.render_without_logging = false
ret
|
Extracted source (around line #21):
19
20
21
22
23
24
|
paginator = Kaminari::Helpers::Paginator.new(self, options.reverse_merge(:current_page => scope.current_page, :per_page => scope.limit_value, :remote => false))
paginator.to_s
end
# A simple "Twitter like" pagination link that creates a link to the previous page.
|
Extracted source (around line #36):
34
35
36
37
|
<%= link_to 'New Order', new_order_path %>
<!-- START_HIGHLIGHT -->
<p><%= paginate @orders %></p>
<!-- END_HIGHLIGHT -->
|
Extracted source (around line #158):
156
157
158
159
160
161
|
instrument("!render_template".freeze) do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #166):
164
165
166
167
168
169
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #348):
346
347
348
349
350
351
|
case action
when "!render_template".freeze
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, payload, &block)
else
ActiveSupport::Notifications.instrument("#{action}.action_view".freeze, payload, &block)
end
|
Extracted source (around line #156):
154
155
156
157
158
159
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer=nil, &block)
instrument("!render_template".freeze) do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #54):
52
53
54
55
56
57
|
render_with_layout(layout_name, locals) do |layout|
instrument(:template, :identifier => template.identifier, :layout => layout.try(:virtual_path)) do
template.render(view, locals) { |*name| view._layout_for(*name) }
end
end
end
|
Extracted source (around line #42):
40
41
42
43
44
45
|
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #164):
162
163
164
165
166
167
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #21):
19
20
21
22
23
24
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #164):
162
163
164
165
166
167
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #41):
39
40
41
42
43
44
|
options[:identifier] ||= (@template && @template.identifier) || @path
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #53):
51
52
53
54
55
56
|
render_with_layout(layout_name, locals) do |layout|
instrument(:template, :identifier => template.identifier, :layout => layout.try(:virtual_path)) do
template.render(view, locals) { |*name| view._layout_for(*name) }
end
end
|
Extracted source (around line #61):
59
60
61
62
63
64
|
def render_with_layout(path, locals) #:nodoc:
layout = path && find_layout(path, locals.keys, [formats.first])
content = yield(layout)
if layout
view = @view
|
Extracted source (around line #52):
50
51
52
53
54
55
|
view, locals = @view, locals || {}
render_with_layout(layout_name, locals) do |layout|
instrument(:template, :identifier => template.identifier, :layout => layout.try(:virtual_path)) do
template.render(view, locals) { |*name| view._layout_for(*name) }
end
|
Extracted source (around line #14):
12
13
14
15
16
17
|
@lookup_context.rendered_format ||= (template.formats.first || formats.first)
render_template(template, options[:layout], options[:locals])
end
private
|
Extracted source (around line #42):
40
41
42
43
44
45
|
# Direct access to template rendering.
def render_template(context, options) #:nodoc:
TemplateRenderer.new(@lookup_context).render(context, options)
end
# Direct access to partial rendering.
|
Extracted source (around line #23):
21
22
23
24
25
26
|
render_partial(context, options)
else
render_template(context, options)
end
end
|
Extracted source (around line #103):
101
102
103
104
105
106
|
lookup_context.variants = variant if variant
view_renderer.render(context, options)
end
# Assign the rendered format to look up context.
|
Extracted source (around line #217):
215
216
217
218
219
220
|
Rack::Chunked::Body.new view_renderer.render_body(view_context, options)
else
super
end
end
end
|
Extracted source (around line #83):
81
82
83
84
85
86
|
def render_to_body(options = {})
_process_options(options)
_render_template(options)
end
def rendered_format
|
Extracted source (around line #52):
50
51
52
53
54
55
|
def render_to_body(options = {})
super || _render_in_priorities(options) || ' '
end
private
|
Extracted source (around line #144):
142
143
144
145
146
147
|
# <tt>ActionView::Rendering.render_to_body</tt>, if present.
def render_to_body(options)
_render_to_body_with_renderer(options) || super
end
def _render_to_body_with_renderer(options)
|
Extracted source (around line #25):
23
24
25
26
27
28
|
def render(*args, &block)
options = _normalize_render(*args, &block)
rendered_body = render_to_body(options)
if options[:html]
_set_html_content_type
else
|
Extracted source (around line #36):
34
35
36
37
38
39
|
def render(*args) #:nodoc:
raise ::AbstractController::DoubleRenderError if self.response_body
super
end
# Overwrite render_to_string because body can now be set to a rack body.
|
Extracted source (around line #43):
41
42
43
44
45
46
|
render_output = nil
self.view_runtime = cleanup_view_runtime do
Benchmark.ms { render_output = super }
end
render_output
end
|
Extracted source (around line #12):
10
11
12
13
14
|
# # => 0.074
def ms
1000 * realtime { yield }
end
end
|
Extracted source (around line #303):
301
302
303
304
305
306
|
def realtime # :yield:
r0 = Process.clock_gettime(BENCHMARK_CLOCK)
yield
Process.clock_gettime(BENCHMARK_CLOCK) - r0
end
|
Extracted source (around line #12):
10
11
12
13
14
|
# # => 0.074
def ms
1000 * realtime { yield }
end
end
|
Extracted source (around line #43):
41
42
43
44
45
46
|
render_output = nil
self.view_runtime = cleanup_view_runtime do
Benchmark.ms { render_output = super }
end
render_output
end
|
Extracted source (around line #86):
84
85
86
87
88
89
|
# :api: plugin
def cleanup_view_runtime #:nodoc:
yield
end
# Every time after an action is processed, this method is invoked
|
Extracted source (around line #25):
23
24
25
26
27
28
|
db_rt_before_render = ActiveRecord::LogSubscriber.reset_runtime
self.db_runtime = (db_runtime || 0) + db_rt_before_render
runtime = super
db_rt_after_render = ActiveRecord::LogSubscriber.reset_runtime
self.db_runtime += db_rt_after_render
runtime - db_rt_after_render
|
Extracted source (around line #42):
40
41
42
43
44
45
|
def render(*args)
render_output = nil
self.view_runtime = cleanup_view_runtime do
Benchmark.ms { render_output = super }
end
render_output
|
Extracted source (around line #39):
37
38
39
40
41
42
|
self.response_body = "Turbolinks.replace('#{view_context.j(body)}'#{_turbolinks_js_options(options)});"
else
super(*args, render_options, &block)
end
self.response_body
|
Extracted source (around line #19):
17
18
19
20
21
22
|
def default_render(*args)
if template_exists?(action_name.to_s, _prefixes, variants: request.variant)
render(*args)
else
if block_given?
yield(*args)
|
Extracted source (around line #4):
2
3
4
5
6
7
|
module BasicImplicitRender
def send_action(method, *args)
super.tap { default_render unless performed? }
end
def default_render(*args)
|
Extracted source (around line #4):
2
3
4
5
6
7
|
module BasicImplicitRender
def send_action(method, *args)
super.tap { default_render unless performed? }
end
def default_render(*args)
|
Extracted source (around line #4):
2
3
4
5
6
7
|
module BasicImplicitRender
def send_action(method, *args)
super.tap { default_render unless performed? }
end
def default_render(*args)
|
Extracted source (around line #183):
181
182
183
184
185
186
|
# which is *not* necessarily the same as the action name.
def process_action(method_name, *args)
send_action(method_name, *args)
end
# Actually call the method associated with the action. Override
|
Extracted source (around line #30):
28
29
30
31
32
33
|
def process_action(*) #:nodoc:
self.formats = request.formats.map(&:ref).compact
super
end
# Check for double render errors and set the content_type after rendering.
|
Extracted source (around line #20):
18
19
20
21
22
23
|
def process_action(*args)
run_callbacks(:process_action) do
super
end
end
|
Extracted source (around line #126):
124
125
126
127
128
129
|
def call(env)
block = env.run_block
env.value = !env.halted && (!block || block.call)
env
end
end
|
Extracted source (around line #126):
124
125
126
127
128
129
|
def call(env)
block = env.run_block
env.value = !env.halted && (!block || block.call)
env
end
end
|
Extracted source (around line #506):
504
505
506
507
508
509
|
def compile
@callbacks || @mutex.synchronize do
final_sequence = CallbackSequence.new { |env| Filters::ENDING.call(env) }
@callbacks ||= @chain.reverse.inject(final_sequence) do |callback_sequence, callback|
callback.apply callback_sequence
end
|
Extracted source (around line #455):
453
454
455
456
457
458
|
def call(arg)
@before.each { |b| b.call(arg) }
value = @call.call(arg)
@after.each { |a| a.call(arg) }
value
end
|
Extracted source (around line #455):
453
454
455
456
457
458
|
def call(arg)
@before.each { |b| b.call(arg) }
value = @call.call(arg)
@after.each { |a| a.call(arg) }
value
end
|
Extracted source (around line #101):
99
100
101
102
103
104
|
runner = callbacks.compile
e = Filters::Environment.new(self, false, nil, block)
runner.call(e).value
end
end
|
Extracted source (around line #750):
748
749
750
751
752
753
|
module_eval <<-RUBY, __FILE__, __LINE__ + 1
def _run_#{name}_callbacks(&block)
__run_callbacks__(_#{name}_callbacks, &block)
end
RUBY
end
|
Extracted source (around line #90):
88
89
90
91
92
93
|
# end
def run_callbacks(kind, &block)
send "_run_#{kind}_callbacks", &block
end
private
|
Extracted source (around line #19):
17
18
19
20
21
22
|
# process_action callbacks around the normal behavior.
def process_action(*args)
run_callbacks(:process_action) do
super
end
end
|
Extracted source (around line #27):
25
26
27
28
29
30
|
private
def process_action(*args)
super
rescue Exception => exception
request.env['action_dispatch.show_detailed_exceptions'] ||= show_detailed_exceptions?
rescue_with_handler(exception) || raise(exception)
|
Extracted source (around line #31):
29
30
31
32
33
34
|
ActiveSupport::Notifications.instrument("process_action.action_controller", raw_payload) do |payload|
begin
result = super
payload[:status] = response.status
result
ensure
|
Extracted source (around line #164):
162
163
164
165
166
167
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #21):
19
20
21
22
23
24
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #164):
162
163
164
165
166
167
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #29):
27
28
29
30
31
32
|
ActiveSupport::Notifications.instrument("start_processing.action_controller", raw_payload.dup)
ActiveSupport::Notifications.instrument("process_action.action_controller", raw_payload) do |payload|
begin
result = super
payload[:status] = response.status
|
Extracted source (around line #248):
246
247
248
249
250
251
|
request.filtered_parameters.merge! wrapped_filtered_hash
end
super
end
private
|
Extracted source (around line #18):
16
17
18
19
20
21
|
# and it won't be cleaned up by the method below.
ActiveRecord::LogSubscriber.reset_runtime
super
end
def cleanup_view_runtime
|
Extracted source (around line #128):
126
127
128
129
130
131
|
@_response_body = nil
process_action(action_name, *args)
end
# Delegates to the class' ::controller_path
|
Extracted source (around line #30):
28
29
30
31
32
33
|
def process(*) #:nodoc:
old_config, I18n.config = I18n.config, I18nProxy.new(I18n.config, lookup_context)
super
ensure
I18n.config = old_config
end
|
Extracted source (around line #190):
188
189
190
191
192
193
|
set_request!(request)
set_response!(response)
process(name)
request.commit_flash
to_a
end
|
Extracted source (around line #262):
260
261
262
263
264
265
|
middleware_stack.build(name) { |env| new.dispatch(name, req, res) }.call req.env
else
new.dispatch(name, req, res)
end
end
end
|
Extracted source (around line #50):
48
49
50
51
52
53
|
def dispatch(controller, action, req, res)
controller.dispatch(action, req, res)
end
end
|
Extracted source (around line #32):
30
31
32
33
34
35
|
controller = controller req
res = controller.make_response! req
dispatch(controller, params[:action], req, res)
rescue ActionController::RoutingError
if @raise_on_name_error
raise
|
Extracted source (around line #39):
37
38
39
40
41
42
|
req.path_parameters = set_params.merge parameters
status, headers, body = route.app.serve(req)
if 'pass' == headers['X-Cascade']
req.script_name = script_name
|
Extracted source (around line #26):
24
25
26
27
28
29
|
def serve(req)
find_routes(req).each do |match, parameters, route|
set_params = req.path_parameters
path_info = req.path_info
script_name = req.script_name
|
Extracted source (around line #26):
24
25
26
27
28
29
|
def serve(req)
find_routes(req).each do |match, parameters, route|
set_params = req.path_parameters
path_info = req.path_info
script_name = req.script_name
|
Extracted source (around line #724):
722
723
724
725
726
727
|
req = make_request(env)
req.path_info = Journey::Router::Utils.normalize_path(req.path_info)
@router.serve(req)
end
def recognize_path(path, environment = {})
|
Extracted source (around line #12):
10
11
12
13
14
15
|
def call(env)
ActionView::LookupContext::DetailsKey.clear
app.call(env)
end
end
|
Extracted source (around line #25):
23
24
25
26
27
28
|
def call(env)
status, headers, body = @app.call(env)
if etag_status?(status) && etag_body?(body) && !skip_caching?(headers)
original_body = body
|
Extracted source (around line #25):
23
24
25
26
27
28
|
case env[REQUEST_METHOD]
when "GET", "HEAD"
status, headers, body = @app.call(env)
headers = Utils::HeaderHash.new(headers)
if status == 200 && fresh?(env, headers)
status = 304
|
Extracted source (around line #12):
10
11
12
13
14
15
|
def call(env)
status, headers, body = @app.call(env)
if env[REQUEST_METHOD] == HEAD
[
|
Extracted source (around line #222):
220
221
222
223
224
225
|
req = make_request env
prepare_session(req)
status, headers, body = app.call(req.env)
res = Rack::Response::Raw.new status, headers
commit_session(req, res)
[status, headers, body]
|
Extracted source (around line #216):
214
215
216
217
218
219
|
def call(env)
context(env)
end
def context(env, app=@app)
|
Extracted source (around line #613):
611
612
613
614
615
616
|
request = ActionDispatch::Request.new env
status, headers, body = @app.call(env)
if request.have_cookie_jar?
cookie_jar = request.cookie_jar
|
Extracted source (around line #36):
34
35
36
37
38
39
|
connection.enable_query_cache!
response = @app.call(env)
response[2] = Rack::BodyProxy.new(response[2]) do
restore_query_cache_settings(connection_id, enabled)
end
|
Extracted source (around line #963):
961
962
963
964
965
966
|
testing = env['rack.test']
status, headers, body = @app.call(env)
proxy = ::Rack::BodyProxy.new(body) do
ActiveRecord::Base.clear_active_connections! unless testing
end
|
Extracted source (around line #558):
556
557
558
559
560
561
|
end
end
@app.call(env)
end
private
|
Extracted source (around line #29):
27
28
29
30
31
32
|
result = run_callbacks :call do
begin
@app.call(env)
rescue => error
end
end
|
Extracted source (around line #97):
95
96
97
98
99
100
|
def __run_callbacks__(callbacks, &block)
if callbacks.empty?
yield if block_given?
else
runner = callbacks.compile
e = Filters::Environment.new(self, false, nil, block)
|
Extracted source (around line #750):
748
749
750
751
752
753
|
module_eval <<-RUBY, __FILE__, __LINE__ + 1
def _run_#{name}_callbacks(&block)
__run_callbacks__(_#{name}_callbacks, &block)
end
RUBY
end
|
Extracted source (around line #90):
88
89
90
91
92
93
|
# end
def run_callbacks(kind, &block)
send "_run_#{kind}_callbacks", &block
end
private
|
Extracted source (around line #27):
25
26
27
28
29
30
|
def call(env)
error = nil
result = run_callbacks :call do
begin
@app.call(env)
rescue => error
|
Extracted source (around line #71):
69
70
71
72
73
74
|
prepare!
response = @app.call(env)
response[2] = ::Rack::BodyProxy.new(response[2]) { cleanup! }
response
|
Extracted source (around line #79):
77
78
79
80
81
82
|
req = ActionDispatch::Request.new env
req.remote_ip = GetIp.new(req, check_ip, proxies)
@app.call(req.env)
end
# The GetIp class exists as a way to defer processing of the request data
|
Extracted source (around line #49):
47
48
49
50
51
52
|
def call(env)
request = ActionDispatch::Request.new env
_, headers, body = response = @app.call(env)
if headers['X-Cascade'] == 'pass'
body.close if body.respond_to?(:close)
|
Extracted source (around line #131):
129
130
131
132
133
134
|
def call_app(env)
@app.call(env)
rescue => e
throw :app_exception, e
end
|
Extracted source (around line #28):
26
27
28
29
30
31
|
end
status, headers, body = call_app(env)
if session = Session.from(Thread.current) and acceptable_content_type?(headers)
response = Response.new(body, status, headers)
|
Extracted source (around line #18):
16
17
18
19
20
21
|
def call(env)
app_exception = catch :app_exception do
request = create_regular_or_whiny_request(env)
return call_app(env) unless request.from_whitelisted_ip?
|
Extracted source (around line #18):
16
17
18
19
20
21
|
def call(env)
app_exception = catch :app_exception do
request = create_regular_or_whiny_request(env)
return call_app(env) unless request.from_whitelisted_ip?
|
Extracted source (around line #31):
29
30
31
32
33
34
|
def call(env)
request = ActionDispatch::Request.new env
@app.call(env)
rescue Exception => exception
if request.show_exceptions?
render_exception(request, exception)
|
Extracted source (around line #36):
34
35
36
37
38
39
|
instrumenter.start 'request.action_dispatch', request: request
logger.info { started_request_message(request) }
resp = @app.call(env)
resp[2] = ::Rack::BodyProxy.new(resp[2]) { finish(request) }
resp
rescue Exception
|
Extracted source (around line #24):
22
23
24
25
26
27
|
if logger.respond_to?(:tagged)
logger.tagged(compute_tags(request)) { call_app(request, env) }
else
call_app(request, env)
end
|
Extracted source (around line #70):
68
69
70
71
72
73
|
def tagged(*tags)
formatter.tagged(*tags) { yield self }
end
def flush
|
Extracted source (around line #26):
24
25
26
27
28
29
|
def tagged(*tags)
new_tags = push_tags(*tags)
yield self
ensure
pop_tags(new_tags.size)
end
|
Extracted source (around line #70):
68
69
70
71
72
73
|
def tagged(*tags)
formatter.tagged(*tags) { yield self }
end
def flush
|
Extracted source (around line #24):
22
23
24
25
26
27
|
if logger.respond_to?(:tagged)
logger.tagged(compute_tags(request)) { call_app(request, env) }
else
call_app(request, env)
end
|
Extracted source (around line #24):
22
23
24
25
26
27
|
req = ActionDispatch::Request.new env
req.request_id = make_request_id(req.x_request_id)
@app.call(env).tap { |_status, headers, _body| headers[X_REQUEST_ID] = req.request_id }
end
private
|
Extracted source (around line #22):
20
21
22
23
24
25
|
end
@app.call(env)
end
def method_override(env)
|
Extracted source (around line #22):
20
21
22
23
24
25
|
def call(env)
start_time = Utils.clock_time
status, headers, body = @app.call(env)
request_time = Utils.clock_time - start_time
unless headers.has_key?(@header_name)
|
Extracted source (around line #28):
26
27
28
29
30
31
|
def call(env)
LocalCacheRegistry.set_cache_for(local_cache_key, LocalStore.new)
response = @app.call(env)
response[2] = ::Rack::BodyProxy.new(response[2]) do
LocalCacheRegistry.set_cache_for(local_cache_key, nil)
end
|
Extracted source (around line #13):
11
12
13
14
15
16
|
interlock = ActiveSupport::Dependencies.interlock
interlock.start_running
response = @app.call(env)
body = Rack::BodyProxy.new(response[2]) { interlock.done_running }
response[2] = body
response
|
Extracted source (around line #136):
134
135
136
137
138
139
|
end
@app.call(req.env)
end
end
end
|
Extracted source (around line #111):
109
110
111
112
113
114
|
def call(env)
status, headers, body = @app.call(env)
if body.respond_to?(:to_path)
case type = variation(env)
when 'X-Accel-Redirect'
|
Extracted source (around line #522):
520
521
522
523
524
525
|
def call(env)
req = build_request env
app.call req.env
end
# Defines additional Rack env configuration that is added on each call.
|
Extracted source (around line #224):
222
223
224
225
226
227
|
def call(env)
env[Const::PUMA_CONFIG] = @config
@app.call(env)
end
end
|
Extracted source (around line #569):
567
568
569
570
571
572
|
begin
begin
status, headers, res_body = @app.call(env)
return :async if req.hijacked
|
Extracted source (around line #406):
404
405
406
407
408
409
|
while true
case handle_request(client, buffer)
when false
return
when :async
|
Extracted source (around line #271):
269
270
271
272
273
274
|
else
if process_now
process_client client, buffer
else
client.set_timeout @first_data_timeout
@reactor.add client
|
Extracted source (around line #114):
112
113
114
115
116
117
|
begin
block.call(work, *extra)
rescue Exception
end
end
|
Extracted source (around line #114):
112
113
114
115
116
117
|
begin
block.call(work, *extra)
rescue Exception
end
end
|
Trace of template inclusion: app/views/orders/index.html.erb
Rails.root: /home/rubys/git/awdwr/edition4/work-224-500beta3/depot
Request
Parameters:
None
_csrf_token: "9B383z/i3vDmahOlDu55fKYprnKzVKAchyJMutvC8lI="
cart_id: 10
order_id: 3
session_id: "0b594e939304e4fba8daa83640e870cf"
user_id: 1
GATEWAY_INTERFACE: "CGI/1.2"
HTTP_ACCEPT: "text/html"
HTTP_ACCEPT_ENCODING: "gzip;q=1.0,deflate;q=0.6,identity;q=0.3"
HTTP_VERSION: "HTTP/1.1"
ORIGINAL_SCRIPT_NAME: ""
REMOTE_ADDR: "127.0.0.1"
SERVER_NAME: "localhost"
SERVER_PROTOCOL: "HTTP/1.1"
Response
Headers:
None