Sha256: 919092d943089b52ef79903dc61a8b65c98cd9b7547b56c94cf2753b3daf8302

Contents?: true

Size: 466 Bytes

Versions: 4

Compression:

Stored size: 466 Bytes

Contents

class Rack::App::Middlewares::Configuration::HandlerSetter

  def initialize(app, handler_class)
    @app = app
    @handler_class = handler_class || raise
  end

  def call(env)
    env[Rack::App::Constants::ENV::REQUEST_HANDLER]= handler(env)
    @app.call(env)
  end

  protected

  def handler(env)
    new_handler = @handler_class.new
    new_handler.request = ::Rack::Request.new(env)
    new_handler.response = ::Rack::Response.new
    new_handler
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rack-app-5.7.0 lib/rack/app/middlewares/configuration/handler_setter.rb
rack-app-5.7.0.rc lib/rack/app/middlewares/configuration/handler_setter.rb
rack-app-5.6.0 lib/rack/app/middlewares/configuration/handler_setter.rb
rack-app-5.5.1 lib/rack/app/middlewares/configuration/handler_setter.rb