Method: ActionDispatch::MiddlewareStack#build

Defined in:
lib/action_dispatch/middleware/stack.rb

#build(app = nil, &block) ⇒ Object



166
167
168
169
170
171
172
173
174
175
# File 'lib/action_dispatch/middleware/stack.rb', line 166

def build(app = nil, &block)
  instrumenting = ActiveSupport::Notifications.notifier.listening?(InstrumentationProxy::EVENT_NAME)
  middlewares.freeze.reverse.inject(app || block) do |a, e|
    if instrumenting
      e.build_instrumented(a)
    else
      e.build(a)
    end
  end
end