Class Merb::Rack::WEBrick
In: merb-core/lib/merb-core/rack/adapter/webrick.rb
Parent: Merb::Rack::AbstractAdapter

Methods

Attributes

server  [RW]  :api: private

Public Class methods

:api: plugin

[Source]

    # File merb-core/lib/merb-core/rack/adapter/webrick.rb, line 15
15:       def self.new_server(port)
16:         options = {
17:           :Port        => port,
18:           :BindAddress => @opts[:host],
19:           :Logger      => Merb.logger,
20:           :AccessLog   => [
21:             [Merb.logger, ::WEBrick::AccessLog::COMMON_LOG_FORMAT],
22:             [Merb.logger, ::WEBrick::AccessLog::REFERER_LOG_FORMAT]
23:           ]
24:         }
25: 
26:         sockets = ::WEBrick::Utils.create_listeners nil, port
27:         @server = ::WEBrick::HTTPServer.new(options.merge(:DoNotListen => true))
28:         @server.listeners.replace sockets
29:       end

:api: plugin

[Source]

    # File merb-core/lib/merb-core/rack/adapter/webrick.rb, line 32
32:       def self.start_server
33:         @server.mount("/", ::Rack::Handler::WEBrick, @opts[:app])
34:         @server.start
35:         exit(@status)
36:       end

:api: plugin

[Source]

    # File merb-core/lib/merb-core/rack/adapter/webrick.rb, line 39
39:       def self.stop(status = 0)
40:         @status = status
41:         @server.shutdown
42:       end

[Validate]