File tree Expand file tree Collapse file tree 2 files changed +13
-14
lines changed
Expand file tree Collapse file tree 2 files changed +13
-14
lines changed Original file line number Diff line number Diff line change 22
33module RorVsWild
44 module Plugin
5- class Middleware
5+ module Middleware
66 module RequestQueueTime
77
88 ACCEPTABLE_HEADERS = [
@@ -49,24 +49,19 @@ def parse_timestamp(timestamp)
4949 @installed = false
5050
5151 def self . setup ( agent )
52- return if @installed
53- Rails . application . config . middleware . unshift ( RorVsWild :: Plugin :: Middleware , nil ) if defined? ( Rails )
52+ return if @installed || ! defined? ( Rails :: Engine )
53+ Rails :: Engine . prepend ( self )
5454 @installed = true
5555 end
5656
57- def initialize ( app , config )
58- @app , @config = app , config
59- end
60-
6157 def call ( env )
6258 execution = RorVsWild ::Execution ::Request . new ( env [ "ORIGINAL_FULLPATH" ] )
6359 execution . add_queue_time ( calculate_queue_time ( env ) )
6460 RorVsWild . agent . start_execution ( execution )
6561 section = RorVsWild ::Section . start
66- section . file , section . line = rails_engine_location
62+ section . file , section . line = method ( :call ) . super_method . source_location
6763 section . commands << "Rails::Engine#call"
68- code , headers , body = @app . call ( env )
69- [ code , headers , body ]
64+ super
7065 ensure
7166 RorVsWild ::Section . stop
7267 RorVsWild . agent . stop_execution
Original file line number Diff line number Diff line change @@ -52,11 +52,15 @@ def unix_timestamp_seconds
5252 Time . now . to_f
5353 end
5454
55+ class App
56+ def call ( env )
57+ end
58+
59+ prepend ( RorVsWild ::Plugin ::Middleware )
60+ end
61+
5562 def middleware
5663 agent # Load agent
57- app = mock ( call : nil )
58- middleware = RorVsWild ::Plugin ::Middleware . new ( app , nil )
59- middleware . stubs ( rails_engine_location : [ "/rails/lib/engine.rb" , 12 ] )
60- middleware
64+ App . new
6165 end
6266end
You can’t perform that action at this time.
0 commit comments