class Mongo::Event::Listeners

The queue of events getting processed in the client.

@since 2.0.0

Public Class Methods

new() click to toggle source

Initialize the event listeners.

@example Initialize the event listeners.

Listeners.new

@since 2.0.0

# File lib/mongo/event/listeners.rb, line 29
def initialize
  @listeners = {}
end

Public Instance Methods

add_listener(event, listener) click to toggle source

Add an event listener for the provided event.

@example Add an event listener

publisher.add_listener("my_event", listener)

@param [ String ] event The event to listen for. @param [ Object ] listener The event listener.

@return [ Array<Object> ] The listeners for the event.

@since 2.0.0

# File lib/mongo/event/listeners.rb, line 44
def add_listener(event, listener)
  listeners_for(event).push(listener)
end
listeners_for(event) click to toggle source

Get the listeners for a specific event.

@example Get the listeners.

publisher.listeners_for("test")

@param [ String ] event The event name.

@return [ Array<Object> ] The listeners.

@since 2.0.0

# File lib/mongo/event/listeners.rb, line 58
def listeners_for(event)
  @listeners[event] ||= []
end