class Tackle::Consumer::Message

Attributes

payload[R]
properties[R]

Public Class Methods

new(connection, logger, delivery_info, properties, payload) click to toggle source
# File lib/tackle/consumer/message.rb, line 9
def initialize(connection, logger, delivery_info, properties, payload)
  @connection = connection
  @logger = logger

  @delivery_info = delivery_info
  @properties    = properties
  @payload       = payload
end

Public Instance Methods

ack() click to toggle source
# File lib/tackle/consumer/message.rb, line 18
def ack
  log_info "Sending positive acknowledgement to source queue"
  @connection.channel.ack(delivery_tag)
  log_info "Positive acknowledgement sent"
end
delivery_tag() click to toggle source
# File lib/tackle/consumer/message.rb, line 38
def delivery_tag
  @delivery_info.delivery_tag
end
log_error(message) click to toggle source
# File lib/tackle/consumer/message.rb, line 46
def log_error(message)
  @logger.error("[delivery_tag=#{delivery_tag}] #{message}")
end
log_info(message) click to toggle source
# File lib/tackle/consumer/message.rb, line 42
def log_info(message)
  @logger.info("[delivery_tag=#{delivery_tag}] #{message}")
end
nack() click to toggle source
# File lib/tackle/consumer/message.rb, line 24
def nack
  log_error "Sending negative acknowledgement to source queue"
  @connection.channel.nack(delivery_tag)
  log_error "Negative acknowledgement sent"
end
retry_count() click to toggle source
# File lib/tackle/consumer/message.rb, line 30
def retry_count
  if @properties.headers && @properties.headers["retry_count"]
    @properties.headers["retry_count"]
  else
    0
  end
end