Module: Rack::Handler::Falcon
- Defined in:
- lib/rack/handler/falcon.rb
Constant Summary collapse
- SCHEME =
"http".freeze
- NAME =
:falcon
Class Method Summary collapse
Class Method Details
.endpoint_for(**options) ⇒ Object
16 17 18 19 20 21 |
# File 'lib/rack/handler/falcon.rb', line 16 def self.endpoint_for(**) host = [:Host] || 'localhost' port = Integer([:Port] || 9292) return Async::IO::Endpoint.tcp(host, port) end |
.run(app, **options) {|server| ... } ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/rack/handler/falcon.rb', line 23 def self.run(app, **) endpoint = endpoint_for(**) app = ::Falcon::Adapters::Rack.new(app) app = ::Falcon::Adapters::Rewindable.new(app) server = ::Falcon::Server.new(app, endpoint, Async::HTTP::Protocol::HTTP1, SCHEME) yield server if block_given? Async::Reactor.run do server.run end end |