Module: Nutcracker::Web

Defined in:
lib/nutcracker/web.rb,
lib/nutcracker/web/app.rb,
lib/nutcracker/web/version.rb

Defined Under Namespace

Classes: App

Constant Summary collapse

VERSION =
"0.0.24"

Class Method Summary collapse

Class Method Details

.joinObject



26
27
28
# File 'lib/nutcracker/web.rb', line 26

def self.join
  @thread.join
end

.start(nutcracker, o = {}) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/nutcracker/web.rb', line 5

def self.start(nutcracker, o = {})
  @thread = Thread.new do
    Thread.current.abort_on_exception=true

    app = Rack::URLMap.new(o.fetch(:context,"/") =>
      App.new(nutcracker, o.fetch(:external_servers,[])))

    Rack::Server.start(
      {
        :app => app,
        :environment => 'production',
        :pid => nil,
        :Port => 9292,
        :Host => '0.0.0.0',
        :AccessLog => []
      }.merge(o)
    )
  end
  self
end

.stopObject



30
31
32
# File 'lib/nutcracker/web.rb', line 30

def self.stop
  @thread.kill
end