class Navigable::Server::RackAdapter

Attributes

endpoint_class[R]

Public Class Methods

new(endpoint_class:) click to toggle source
# File lib/navigable/server/rack_adapter.rb, line 8
def initialize(endpoint_class:)
  @endpoint_class = endpoint_class
end

Public Instance Methods

call(env) click to toggle source
# File lib/navigable/server/rack_adapter.rb, line 12
def call(env)
  Response.new(endpoint(request(env)).execute).to_rack_response
end

Private Instance Methods

endpoint(request) click to toggle source
# File lib/navigable/server/rack_adapter.rb, line 22
def endpoint(request)
  endpoint_class.new.tap { |endpoint| endpoint.inject(request: request) }
end
request(env) click to toggle source
# File lib/navigable/server/rack_adapter.rb, line 18
def request(env)
  Request.new(env)
end