module Aggregates::MessageProcessor::ClassMethods

Provides a single mapping of Message Classes to a list of handler blocks that should be executed when that type of message is received.

Public Instance Methods

handles_message?(message) click to toggle source
# File lib/aggregates/message_processor.rb, line 21
def handles_message?(message)
  message_mapping.key?(message.class)
end
message_mapping() click to toggle source
# File lib/aggregates/message_processor.rb, line 17
def message_mapping
  @message_mapping ||= {}
end
on(*message_classes, &block) click to toggle source
# File lib/aggregates/message_processor.rb, line 10
def on(*message_classes, &block)
  message_classes.each do |message_class|
    handlers = message_mapping[message_class] ||= []
    handlers.append block
  end
end