module Clamour::Handler

Public Instance Methods

on_message(message) click to toggle source

@abstract You must use on_message method to act on a message. @param [Clamour::Message] message

# File lib/clamour/handler.rb, line 36
def on_message(message)
  raise NotImplementedError.new('You must override "on_message" method to act on a message')
end
perform(message_class_name, message_attributes) click to toggle source

Like a usual Sidekiq job.

@param [String] message_class_name @param [Hash] message_attributes

# File lib/clamour/handler.rb, line 29
def perform(message_class_name, message_attributes)
  message = restore_message(message_class_name, message_attributes)
  on_message(message)
end

Protected Instance Methods

restore_message(message_class_name, message_attributes) click to toggle source

Deserialize message of Sidekiq-passed parameters.

@param [String] message_class_name @param [Hash] message_attributes @return [Clamour::Message]

# File lib/clamour/handler.rb, line 47
def restore_message(message_class_name, message_attributes)
  message_class = message_class_name.constantize
  message_class.new(message_attributes)
end