request = $request; } public function beforeController($controller, $methodName) { if (!($controller instanceof JoinController)) { return; } $token = $this->request->getParam('token'); if ($token === null) { throw new NotFoundException(); } $controller->setToken($token); if ($controller->isValidToken()) { return; } throw new NotFoundException(); } public function afterException($controller, $methodName, \Exception $exception) { if (!($controller instanceof JoinController)) { throw $exception; } if ($exception instanceof NotFoundException) { return new NotFoundResponse(); } if ($exception instanceof NoPermissionException) { return new NoPermissionResponse(); } throw $exception; } }