class Retl::EventRouter

Public Class Methods

new() click to toggle source
# File lib/retl/event_router.rb, line 3
def initialize
  @listeners = {}
end

Public Instance Methods

listen_to(event_name, &block) click to toggle source
# File lib/retl/event_router.rb, line 7
def listen_to(event_name, &block)
  @listeners[event_name] ||= []
  @listeners[event_name] << block
end
trigger(event_name, args={}) click to toggle source
# File lib/retl/event_router.rb, line 12
def trigger(event_name, args={})
  listeners = @listeners[event_name]

  if listeners
    listeners.each do |handler|
      handler.call(args)
    end
  end
end