/** * @param string $id * @return Action * @throws \Exception */ public function getAction($id) { if (!array_key_exists($id, $this->actions) || $this->access && !$this->access->isVisible($id)) { throw new \Exception("Action [{$id}] is not registered."); } return $this->actions[$id]; }