class Bricolage::SQSDataSource::MessageHandler

Public Instance Methods

after_message_batch() click to toggle source

Called after each message batch (ReceiveMessage) is processed. Override this method in subclasses on demand.

# File lib/bricolage/sqsdatasource.rb, line 143
def after_message_batch
end
call_handler_method(msg) click to toggle source
# File lib/bricolage/sqsdatasource.rb, line 126
def call_handler_method(msg)
  __send__(handler_method(msg), msg)
end
handle(msg) click to toggle source

abstract logger()

# File lib/bricolage/sqsdatasource.rb, line 113
def handle(msg)
  logger.debug "handling message: #{msg.inspect}" if logger.debug?
  if handleable?(msg)
    call_handler_method(msg)
  else
    handle_unknown(msg)
  end
end
handle_unknown(msg) click to toggle source

Unknown message handler. Feel free to override this method.

# File lib/bricolage/sqsdatasource.rb, line 136
def handle_unknown(msg)
  # just ignore unknown message to make app migration easy
  logger.error "unknown message type: #{msg.message_type.inspect} (message-id: #{msg.message_id})"
end
handleable?(msg) click to toggle source
# File lib/bricolage/sqsdatasource.rb, line 122
def handleable?(msg)
  respond_to?(handler_method(msg), true)
end
handler_method(msg) click to toggle source
# File lib/bricolage/sqsdatasource.rb, line 130
def handler_method(msg)
  "handle_#{msg.message_type}".intern
end