class Dry::Events::Listener

@api public
end
end
# do something
subscribe(“users.created”) do |event|
include Dry::Events::Listener[:app]
class MyListener
end
register_event(“users.created”)
include Dry::Events::Publisher[:app]
class AppEvents
@example
Extension for objects that can listen to events

def self.[](id)

Other tags:
    Api: - public

Returns:
  • (Module) -
def self.[](id)
  new(id)
end

def included(klass)

Other tags:
    Api: - private
def included(klass)
  klass.extend(self)
  super
end

def initialize(id)

Other tags:
    Api: - private
def initialize(id)
  super()
  @id = id
  define_method(:subscribe) do |event_id, query = EMPTY_HASH, &block|
    Publisher.registry[id].subscribe(event_id, query, &block)
  end
end