class RubyEventStore::ComposedDispatcher

Public Class Methods

new(*dispatchers) click to toggle source
# File lib/ruby_event_store/composed_dispatcher.rb, line 5
def initialize(*dispatchers)
  @dispatchers = dispatchers
end

Public Instance Methods

call(subscriber, event, record) click to toggle source
# File lib/ruby_event_store/composed_dispatcher.rb, line 9
def call(subscriber, event, record)
  @dispatchers.each do |dispatcher|
    if dispatcher.verify(subscriber)
      dispatcher.call(subscriber, event, record)
      break
    end
  end
end
verify(subscriber) click to toggle source
# File lib/ruby_event_store/composed_dispatcher.rb, line 18
def verify(subscriber)
  @dispatchers.any? { |dispatcher| dispatcher.verify(subscriber) }
end