/** * @see \Ableron\Core\Controller\ControllerInterface::processRequest() */ public function processRequest(HttpRequest $request) { // set request to process $this->request = $request; // process request try { $this->init(); $this->checkAccessPermissions(); $this->run(); } catch (RedirectRequiredException $e) { Application::getResponseHandler()->sendRedirect($e->getRedirectUri()); } catch (AccessDeniedException $e) { Application::getRequestHandler()->isFrontendRequest() ? new FrontendAccessDeniedPage($this->request) : new BackendAccessDeniedPage($this->request); } catch (SystemException $e) { // log exception Application::getLogManager()->logException('Unable to process request', $e); // stop script execution Application::exitWithInternalServerError(); } }