class AMQP::Integration::Rails
Public Class Methods
environment()
click to toggle source
@return [String] application environment
# File lib/amqp/integration/rails.rb, line 8 def self.environment if defined?(::Rails) ::Rails.env else ENV['RAILS_ENV'] || ENV['RACK_ENV'] || 'development' end end
root()
click to toggle source
@return [String] application root directory
# File lib/amqp/integration/rails.rb, line 17 def self.root defined?(::Rails) && ::Rails.root || Dir.pwd end
start(options_or_uri = {}, &block)
click to toggle source
# File lib/amqp/integration/rails.rb, line 21 def self.start(options_or_uri = {}, &block) yaml = YAML.load_file(File.join(root, 'config', 'amqp.yml')) settings = yaml.fetch(environment, Hash.new).symbolize_keys arg = if options_or_uri.is_a?(Hash) settings.merge(options_or_uri)[:uri] else settings[:uri] || options_or_uri end EventMachine.next_tick do AMQP.start(arg, &block) end end