You are here

public function StateMachine::get_available_events in State Machine 7.2

Same name and namespace in other branches
  1. 6 inc/base.inc \StateMachine::get_available_events()
  2. 7.3 inc/base.inc \StateMachine::get_available_events()
  3. 7 inc/base.inc \StateMachine::get_available_events()

Returns an array of events that are valid for the current state.

File

inc/base.inc, line 200
base.inc

Class

StateMachine
@file base.inc

Code

public function get_available_events() {
  $events = array();
  foreach ($this->events as $key => $event) {
    $event_object = $this
      ->get_event($key);
    if ($this
      ->get_event($key)
      ->can_transition_from($this
      ->get_current_state())) {
      $events[$key] = $event_object;
    }
  }
  return $events;
}