instance method fire_event

Ruby on Rails 2.3.18

Since v2.2.3 Last seen in v2.3.18

Available in: v2.2.3 v2.3.18

Signature

fire_event(event, record, persist, *args)

No documentation comment.

Parameters

event req
record req
persist req
args rest
Source
# File activemodel/lib/active_model/state_machine/machine.rb, line 26
      def fire_event(event, record, persist, *args)
        state_index[record.current_state(@name)].call_action(:exit, record)
        if new_state = @events[event].fire(record, *args)
          state_index[new_state].call_action(:enter, record)

          if record.respond_to?(event_fired_callback)
            record.send(event_fired_callback, record.current_state, new_state)
          end

          record.current_state(@name, new_state, persist)
          record.send(@events[event].success) if @events[event].success
          true
        else
          if record.respond_to?(event_failed_callback)
            record.send(event_failed_callback, event)
          end

          false
        end
      end

Defined in activemodel/lib/active_model/state_machine/machine.rb line 26 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveModel::StateMachine::Machine

Type at least 2 characters to search.

↑↓ navigate · open · esc close