Class: Cloudist::Application
- Includes:
- Singleton
- Defined in:
- lib/cloudist/application.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.signal_trap! ⇒ Object
17 18 19 20 |
# File 'lib/cloudist/application.rb', line 17 def signal_trap! ::Signal.trap('INT') { Cloudist.stop } ::Signal.trap('TERM'){ Cloudist.stop } end |
.start(options = {}, &block) ⇒ Object
8 9 10 11 12 13 14 15 |
# File 'lib/cloudist/application.rb', line 8 def start( = {}, &block) = instance.settings.update() AMQP.start() do instance.setup_reconnect_hook! instance.instance_eval(&block) if block_given? end end |
Instance Method Details
#default_settings ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/cloudist/application.rb', line 31 def default_settings uri = URI.parse(ENV["AMQP_URL"] || 'amqp://guest:guest@localhost:5672/') { :vhost => uri.path, :host => uri.host, :user => uri.user, :port => uri.port || 5672, :pass => uri.password, :heartbeat => 5, :logging => false } rescue Object => e raise "invalid AMQP_URL: (#{uri.inspect}) #{e.class} -> #{e.}" end |
#settings ⇒ Object
23 24 25 |
# File 'lib/cloudist/application.rb', line 23 def settings @@settings ||= default_settings end |
#settings=(settings_hash) ⇒ Object
27 28 29 |
# File 'lib/cloudist/application.rb', line 27 def settings=(settings_hash) @@settings = default_settings.update(settings_hash) end |