/** * Constructor * * @param string $pTriggerUrl * @param string|object $pControllerClass * @param \RestService\Server $pParentController */ public function __construct($pTriggerUrl, $pControllerClass = null, $pParentController = null) { $this->normalizeUrl($pTriggerUrl); if ($pParentController) { $this->parentController = $pParentController; $this->setClient($pParentController->getClient()); if ($pParentController->getCheckAccess()) { $this->setCheckAccess($pParentController->getCheckAccess()); } if ($pParentController->getExceptionHandler()) { $this->setExceptionHandler($pParentController->getExceptionHandler()); } if ($pParentController->getDebugMode()) { $this->setDebugMode($pParentController->getDebugMode()); } if ($pParentController->getDescribeRoutes()) { $this->setDescribeRoutes($pParentController->getDescribeRoutes()); } if ($pParentController->getControllerFactory()) { $this->setControllerFactory($pParentController->getControllerFactory()); } $this->setHttpStatusCodes($pParentController->getHttpStatusCodes()); } else { $this->setClient(new Client($this)); } $this->setClass($pControllerClass); $this->setTriggerUrl($pTriggerUrl); }