Module: Simple::Httpd::Server
Defined Under Namespace
Modules: NullLogger
Instance Method Summary collapse
- #exit!(exit_status = 1) ⇒ Object
- #listen!(app, environment: "development", host: nil, port:, logger: nil) ⇒ Object
Instance Method Details
#exit!(exit_status = 1) ⇒ Object
60 61 62 63 64 65 66 67 |
# File 'lib/simple/httpd/server.rb', line 60 def exit!(exit_status = 1) # Run SimpleCov if exists, and if this is the PID that started SimpleCov in the first place. if defined?(SimpleCov) && SimpleCov.pid == Process.pid SimpleCov.process_result(SimpleCov.result, 0) end Kernel.exit! exit_status end |
#listen!(app, environment: "development", host: nil, port:, logger: nil) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/simple/httpd/server.rb', line 11 def listen!(app, environment: "development", host: nil, port:, logger: nil) expect! app != nil host ||= "127.0.0.1" URI("http://#{host}:#{port}") # validate host and port logger ||= ::Simple::Httpd.logger prepare_logger!(logger) logger.info "Starting httpd server on http://#{host}:#{port}/" app = ::Rack::Lint.new(app) if environment != "production" # re/AccessLog: the AccessLog setting points WEBrick's access logging to the # NullLogger object. # # Instead we'll use a combination of Rack::CommonLogger (see Simple::Httpd.app), # and sinatra's logger (see Simple::Httpd::BaseController). ::Rack::Server.start app: app, Host: host, Port: port, environment: environment, Logger: logger, AccessLog: [[NullLogger, ""]] end |