Class: Cannon::MiddlewareRunner

Inherits:
Object
  • Object
show all
Includes:
EventMachine::Deferrable
Defined in:
lib/cannon/middleware.rb

Instance Method Summary collapse

Constructor Details

#initialize(ware, callback:, app:) ⇒ MiddlewareRunner

Returns a new instance of MiddlewareRunner.



12
13
14
15
# File 'lib/cannon/middleware.rb', line 12

def initialize(ware, callback:, app:)
  @app = app
  @ware, @callback = instantiate(ware), callback
end

Instance Method Details

#run(request, response) ⇒ Object



17
18
19
20
21
22
23
24
# File 'lib/cannon/middleware.rb', line 17

def run(request, response)
  next_proc = -> do
    setup_callback
    self.succeed(request, response)
  end

  result = @ware.run(request, response, next_proc)
end