class ActiveAdmin::EventDispatcher

Public Class Methods

new() click to toggle source
# File lib/active_admin/event.rb, line 4
def initialize
  @events = {}
end

Public Instance Methods

clear_all_subscribers!() click to toggle source
# File lib/active_admin/event.rb, line 8
def clear_all_subscribers!
  @events = {}
end
dispatch(event, *args) click to toggle source
# File lib/active_admin/event.rb, line 23
def dispatch(event, *args)
  subscribers(event).each do |subscriber|
    subscriber.call(*args)
  end
end
subscribe(*event_names, &block) click to toggle source
# File lib/active_admin/event.rb, line 12
def subscribe(*event_names, &block)
  event_names.each do |event|
    @events[event] ||= []
    @events[event] << block
  end
end
subscribers(event) click to toggle source
# File lib/active_admin/event.rb, line 19
def subscribers(event)
  @events[event] || []
end