Module: RackRabbit

Defined in:
lib/rack-rabbit.rb,
lib/rack-rabbit/client.rb,
lib/rack-rabbit/config.rb,
lib/rack-rabbit/server.rb,
lib/rack-rabbit/worker.rb,
lib/rack-rabbit/adapter.rb,
lib/rack-rabbit/handler.rb,
lib/rack-rabbit/message.rb,
lib/rack-rabbit/signals.rb,
lib/rack-rabbit/response.rb,
lib/rack-rabbit/subscriber.rb,
lib/rack-rabbit/adapter/amqp.rb,
lib/rack-rabbit/adapter/mock.rb,
lib/rack-rabbit/adapter/bunny.rb,
lib/rack-rabbit/middleware/program_name.rb

Defined Under Namespace

Modules: HEADER, Middleware, STATUS Classes: Adapter, Client, Config, Handler, Message, Response, Server, Signals, Subscriber, Worker

Constant Summary collapse

VERSION =

CONSTANTS

"0.6.0"
SUMMARY =
"A Unicorn-style forking, rack-based server for hosting rabbitMQ consumer processes"
DEFAULT_RABBIT =
{
  :host    => "127.0.0.1",
  :port    => "5672",
  :adapter => "bunny"
}.freeze

Class Method Summary collapse

Class Method Details

.friendly_signal(sig) ⇒ Object

HELPER METHODS



50
51
52
53
54
55
56
57
58
# File 'lib/rack-rabbit.rb', line 50

def self.friendly_signal(sig)
  case sig
  when :QUIT then "QUIT"
  when :INT  then "INTERRUPT"
  when :TERM then "TERMINATE"
  else
    sig
  end
end

.load_rack_app(rack_file) ⇒ Object




62
63
64
# File 'lib/rack-rabbit.rb', line 62

def self.load_rack_app(rack_file)
  (@rack_app_cache ||= {})[rack_file] ||= Rack::Builder.parse_file(rack_file)
end

.run!(options) ⇒ Object

ENTRY POINT



41
42
43
44
# File 'lib/rack-rabbit.rb', line 41

def self.run!(options)
  require 'rack-rabbit/server'
  Server.new(options).run
end