class Pushr::Daemon::MessageHandler
Attributes
connection[R]
name[R]
Public Class Methods
new(queue_name, connection, name, i)
click to toggle source
# File lib/pushr/daemon/message_handler.rb, line 6 def initialize(queue_name, connection, name, i) @queue_name = queue_name @connection = connection @name = "#{name}: MessageHandler #{i}" Pushr::Daemon.logger.info "[#{@name}] listening to #{@queue_name}" end
Public Instance Methods
start()
click to toggle source
# File lib/pushr/daemon/message_handler.rb, line 13 def start Thread.new do loop do handle_next break if @stop end end end
stop()
click to toggle source
# File lib/pushr/daemon/message_handler.rb, line 22 def stop @stop = true end
Protected Instance Methods
handle_next()
click to toggle source
# File lib/pushr/daemon/message_handler.rb, line 28 def handle_next message = Pushr::Message.next(@queue_name) return if message.nil? Pushr::Core.instrument('message', app: message.app, type: message.type) do connection.write(message) Pushr::Daemon.logger.info("[#{connection.name}] Message delivered to #{message.to_json}") end rescue => e Pushr::Daemon.logger.error(e) end