Method: AASM::ClassMethods#aasm_event
- Defined in:
- lib/aasm/aasm.rb
#aasm_event(name, options = {}, &block) ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/aasm/aasm.rb', line 53 def aasm_event(name, = {}, &block) sm = AASM::StateMachine[self] unless sm.events.has_key?(name) sm.events[name] = AASM::SupportingClasses::Event.new(name, , &block) end define_method("#{name.to_s}!") do |*args| aasm_fire_event(name, true, *args) end define_method("#{name.to_s}") do |*args| aasm_fire_event(name, false, *args) end end |