/** * Do dispatch * * @param string $module * @param string $controller * @param array $params * @return Controller */ protected function doDispatch($module, $controller, $params = []) { // @TODO: try to find custom controller class // create controller controller $controllerInstance = new Controller($module, $controller); // check HTTP Accept header $controllerInstance->checkAccept(); // check HTTP method $controllerInstance->checkMethod(); // check ACL privileges $controllerInstance->checkPrivilege(); // run controller $controllerInstance->run($params); return $controllerInstance; }