Method: Pigeon::Engine.launch

Defined in:
lib/pigeon/engine.rb

.launch(options = nil) ⇒ Object

Launches the engine with the specified options



125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'lib/pigeon/engine.rb', line 125

def self.launch(options = nil)
  engine = nil
  
  EventMachine.run do
    engine = new(options)
    
    Signal.trap('INT') do
      engine.terminate
    end

    Pigeon::Engine.register_engine(engine)

    yield(engine) if (block_given?)

    engine.run
  end

  Pigeon::Engine.unregister_engine(engine)
end