module Dry::Events::Publisher::InstanceMethods

def subscribe(object_or_event_id, filter_hash = EMPTY_HASH, &block)

Other tags:
    Api: - public

Returns:
  • (Object) - self

Parameters:
  • filter_hash (Hash) -- An optional event filter
  • object_or_event_id (Symbol, String, Object) -- The event identifier or a listener object
def subscribe(object_or_event_id, filter_hash = EMPTY_HASH, &block)
  if __bus__.can_handle?(object_or_event_id)
    filter = Filter.new(filter_hash)
    if block
      __bus__.subscribe(object_or_event_id, filter, &block)
    else
      __bus__.attach(object_or_event_id, filter)
    end
    self
  else
    raise InvalidSubscriberError, object_or_event_id
  end
end