*/ class SecurityAwareStateMachine extends StateMachine { /** * @var AuthorizationCheckerInterface */ protected $authorizationChecker; /** * @param AuthorizationCheckerInterface $authorizationChecker */ public function setSecurityContext(AuthorizationCheckerInterface $authorizationChecker) { $this->authorizationChecker = $authorizationChecker; } /** * {@inheritdoc} */ public function can($transition, array $parameters = array()) { $transition = $transition instanceof TransitionInterface ? $transition : $this->getTransition($transition); if (!$this->authorizationChecker->isGranted($transition->getName(), $this->getObject())) { return false; } return parent::can($transition, $parameters); } } __halt_compiler();----SIGNATURE:----DzyQUKkl+Y+Di0fNI0nU3Gz0pHcKO0UeS74WmXWSsX0Mr2dgDfsx4lhNmKwZXw+Vw7OdgZMO+9iK+u1v8clnqSjhK2U3NNsZH/YPePUqdOIXujx8kIPE6xI5nqc+LVV3JO0vnQbWn/avzfYM+J0sJa9wau+i/4yYG/ihfCGrkJZ330dBhnPa7AqrtX4SQlkQYUrsJ/egTbAktLOjqa1SywoqAhZKq6c3E5xM1W9g/LSsSFWMkAFCNJjeRWGFi+2GxEXv3TXHo2nefrQyEjpW2nkd10AUBq3Usvc7uMdU3F26gbVpB03MlYFnKOJKmbBjE037ZlqpEuItEzIGYDGB7kbcmzL47aZedg9wRNC2QiyD8xsfT/GsIv8w/Ydcn9aj5i4o7h2rt2RUwcvzE8DwNQ9n6AgTIaBDCm1/M0vsNe1ySh/fMAo246Rv+/QegRuDYeJeYprTYjXC0egrFCoNMZRpEI2TwerHyccmTA6IQnK+RgWRSs0yTH8WCHFGqL0h9Rzb0VsYJYYryOi1BjubWc2wNxwlufgDnFi/6ljFG7HbrdABUzkK/fQKK5Dyw2Es/mtsXFM9sLpR1hhQyTur9FX3F2/q0Wtml/jJfikOOQ3GSg9ILJkuA0XrXCISlE58GnVyoAZ44NndMTzOx/Wpo8heVqDzrQxlkMH5QhVosS8=----ATTACHMENT:----MTQ4NzUzMzAyODc1MjMzIDg5NTMxODY2OTA3NTc2OTcgMTMzMzI0MTQzMzQ4MTMyMQ==