class MessageDriver::Adapters::BunnyAdapter::Subscription::MessageHandler
Attributes
subscription[RW]
Public Class Methods
new(subscription)
click to toggle source
# File lib/message_driver/adapters/bunny_adapter.rb, line 186 def initialize(subscription) @subscription = subscription end
Public Instance Methods
call(*message_args)
click to toggle source
# File lib/message_driver/adapters/bunny_adapter.rb, line 190 def call(*message_args) message = sub_ctx.args_to_message(*message_args, destination) consumer.call(message) rescue => e error_handler.call(e, message) unless error_handler.nil? end
nack_message(e, message)
click to toggle source
# File lib/message_driver/adapters/bunny_adapter.rb, line 197 def nack_message(e, message) return if message.nil? requeue = true if e.is_a?(DontRequeue) || (options[:retry_redelivered] == false && message.redelivered?) requeue = false end if !sub_ctx.nil? && sub_ctx.valid? begin sub_ctx.nack_message(message, requeue: requeue) rescue => e logger.error exception_to_str(e) end end end