module RabbitFeed::ConsoleConsumer
Constants
- APPLICATION_NAME
Public Instance Methods
event_count_message()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 20 def event_count_message "#{@event_count} events received." end
formatted(event)
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 16 def formatted(event) Formatter.new(event).to_s end
increment_event_count()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 24 def increment_event_count @event_count += 1 end
init()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 7 def init @event_count = 0 set_application route_all_events puts welcome_message ask_to_purge_queue unless queue_empty? puts 'Ready. Press CTRL+C to exit.' end
Private Instance Methods
ask_to_purge_queue()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 40 def ask_to_purge_queue puts "There are currently #{ConsumerConnection.instance.queue_depth} message(s) in the console's queue.\n"\ 'Would you like to purge the queue before proceeding? (y/N)>' response = STDIN.gets.chomp purge_queue if response == 'y' end
purge_queue()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 47 def purge_queue ConsumerConnection.instance.purge_queue puts 'Queue purged.' end
queue_empty?()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 36 def queue_empty? ConsumerConnection.instance.queue_depth.zero? end
route_all_events()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 52 def route_all_events scope = self EventRouting do accept_from(:any) do event(:any) do |event| scope.increment_event_count puts scope.formatted(event) puts scope.event_count_message end end end end
set_application()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 65 def set_application RabbitFeed.application = APPLICATION_NAME end
welcome_message()
click to toggle source
# File lib/rabbit_feed/console_consumer.rb, line 30 def welcome_message "RabbitFeed console starting at #{Time.now.utc}...\n"\ "Environment: #{RabbitFeed.environment}\n"\ "Queue: #{RabbitFeed.configuration.queue}" end