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