/** * Get all states in the system, with options to filter, only where a workflow exists. * * @_deprecated WorkflowState::getStates() ==> WorkflowState::loadMultiple() * * {@inheritdoc} * * @param $wid * The requested Workflow ID. * @param bool $reset * An option to refresh all caches. * * @return WorkflowState[] $states * An array of cached states. */ public static function loadMultiple(array $ids = NULL, $wid = '', $reset = FALSE) { if ($reset) { self::$states = array(); } if (empty(self::$states)) { self::$states = parent::loadMultiple(); usort(self::$states, ['Drupal\\workflow\\Entity\\WorkflowState', 'sort']); } if (!$wid) { // All states are requested and cached: return them. $result = self::$states; } else { // All states of only 1 Workflow is requested: return this one. // E.g., when called by Workflow->getStates(). $result = array(); foreach (self::$states as $state) { /* @var $state WorkflowState */ if ($state->wid == $wid) { $result[$state->id()] = $state; } } } return $result; }