class SQS::Job::Message::Base
Base
class for messages. A Message::Base
subclass must implement an invoke! method which performs the appropriate operation.
Attributes
message_id[R]
Id of this message. Used to send replies.
params[R]
Parameters for the message. This Hash is frozen.
Public Class Methods
new(params)
click to toggle source
# File lib/sqs/job/message/base.rb, line 11 def initialize params # We allow messages with no params field @params = (params || {}).symbolize_keys.freeze end
Public Instance Methods
param!(name)
click to toggle source
Get a parameter or raise an exception if it's not present @param name [Symbol,String] the param name
# File lib/sqs/job/message/base.rb, line 24 def param! name params[name.to_sym] or raise "Missing parameter #{name}" end
type()
click to toggle source
Type field for this message. Used primarily when sending replies.
# File lib/sqs/job/message/base.rb, line 30 def type self.class.name.split('::')[-1].underscore end