Class: Woodhouse::TriggerSet

Inherits:
Object
  • Object
show all
Defined in:
lib/woodhouse/trigger_set.rb

Instance Method Summary collapse

Constructor Details

#initializeTriggerSet

Returns a new instance of TriggerSet.



3
4
5
# File 'lib/woodhouse/trigger_set.rb', line 3

def initialize
  @triggers = {}
end

Instance Method Details

#add(event_name, &blk) ⇒ Object



7
8
9
10
# File 'lib/woodhouse/trigger_set.rb', line 7

def add(event_name, &blk)
  @triggers[event_name.to_sym] ||= []
  @triggers[event_name.to_sym] << blk
end

#trigger(event_name, *args) ⇒ Object



13
14
15
16
17
# File 'lib/woodhouse/trigger_set.rb', line 13

def trigger(event_name, *args)
  (@triggers[event_name.to_sym] || []).each do |trigger|
    trigger.call(*args)
  end
end