module Dry::Events::Publisher::InstanceMethods
def subscribe(object_or_event_id, filter_hash = EMPTY_HASH, &block)
- 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