if (!
isset($this->configuration
[$eventName])) { return;
} $eventConfiguration =
(array) $this->configuration
[$eventName];
foreach ($eventConfiguration as $guard) { if ($guard instanceof GuardExpression
) { if ($guard->
getTransition() !==
$event->
getTransition()) { continue;
} $this->
validateGuardExpression($event,
$guard->
getExpression());
} else { $this->
validateGuardExpression($event,
$guard);
} } } private function validateGuardExpression(GuardEvent
$event, string
$expression): void
{ if (!
$this->expressionLanguage->
evaluate($expression,
$this->
getVariables($event))) { $blocker = TransitionBlocker::
createBlockedByExpressionGuardListener($expression);
$event->
addTransitionBlocker($blocker);
}