Module Opensteam::StateMachine::ClassMethods
In: lib/opensteam/state_machine.rb

Methods

Public Instance methods

[Source]

    # File lib/opensteam/state_machine.rb, line 38
38:      def get_observer ; @@observer ||= [] ; end

[Source]

    # File lib/opensteam/state_machine.rb, line 40
40:       def initial_state( state )
41:         after_create { |record| record.state = state }
42:       end

notify association on state-change calls the observers of the association

[Source]

    # File lib/opensteam/state_machine.rb, line 51
51:       def notify(assoc)
52:         observers << Opensteam::StateMachine::Observer.new( self ) do |record|
53:           record.send( assoc ).class.observers.each { |o| o.exc( record.send( assoc ) ) }
54:         end
55:       end

observe state-changes -> calls given block after change_state

[Source]

    # File lib/opensteam/state_machine.rb, line 45
45:       def observe( &block )
46:         observers << Opensteam::StateMachine::Observer.new( self, &block )
47:       end

[Validate]