module SongkickQueue::Consumer

Attributes

delivery_info[R]
logger[R]

Public Class Methods

included(base) click to toggle source
# File lib/songkick_queue/consumer.rb, line 26
def self.included(base)
  base.extend(ClassMethods)
end
new(delivery_info, logger) click to toggle source

@param delivery_info [Bunny::DeliveryInfo#delivery_tag] to use for

acknowledgement and requeues, rejects etc...

@param logger [Logger] to expose to the client consumer for logging

# File lib/songkick_queue/consumer.rb, line 33
def initialize(delivery_info, logger)
  @delivery_info = delivery_info
  @logger        = logger
end

Public Instance Methods

process(message) click to toggle source

Placeholder method to ensure each client consumer defines their own process message

@param message [Object] to process @raise [NotImplementedError]

# File lib/songkick_queue/consumer.rb, line 43
def process(message)
  fail NotImplementedError, 'you must define a #process method in your ' +
    'consumer class, see the README for more info.'
end