Module: ActionSubscriber::Babou
- Defined in:
- lib/action_subscriber/babou.rb
Class Method Summary collapse
- .logger ⇒ Object
- .reload_active_record ⇒ Object
- .shutting_down? ⇒ Boolean
-
.start_subscribers ⇒ Object
Class Methods.
- .stop_server! ⇒ Object
Class Method Details
.logger ⇒ Object
20 21 22 |
# File 'lib/action_subscriber/babou.rb', line 20 def self.logger ::ActionSubscriber::Logging.logger end |
.reload_active_record ⇒ Object
24 25 26 27 28 |
# File 'lib/action_subscriber/babou.rb', line 24 def self.reload_active_record if defined?(::ActiveRecord::Base) && !::ActiveRecord::Base.connected? ::ActiveRecord::Base.establish_connection end end |
.shutting_down? ⇒ Boolean
30 31 32 |
# File 'lib/action_subscriber/babou.rb', line 30 def self.shutting_down? !!@shutting_down end |
.start_subscribers ⇒ Object
Class Methods
6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/action_subscriber/babou.rb', line 6 def self.start_subscribers reload_active_record ::ActionSubscriber.setup_default_connection! ::ActionSubscriber.setup_subscriptions! ::ActionSubscriber.print_subscriptions ::ActionSubscriber.start_subscribers! logger.info "Action Subscriber connected" while true sleep 1.0 #just hang around waiting for messages break if shutting_down? end end |
.stop_server! ⇒ Object
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/action_subscriber/babou.rb', line 34 def self.stop_server! # this method is called from within a TRAP context so we can't use the logger @shutting_down = true ::Thread.new do puts "Stopping subscribers..." ::ActionSubscriber.stop_subscribers! puts "Shutting down" ::ActionSubscriber::RabbitConnection.subscriber_disconnect! end.join end |