public function createController(RouteRule $routeRule) { $controllerName = ClassName::pathToFullyQualifiedName($routeRule->getController()); foreach ($this->controllerNamespaces as $controllerNamespace) { $controller = $controllerNamespace . $controllerName . "Controller"; if (class_exists($controller)) { return $this->getInstance($routeRule, $controller); } } throw new ControllerNotFoundException('Controller [' . $controllerName . '] for URI [' . $routeRule->getUri() . '] does not exist!'); }
public function initialize(RouteRule $routeRule) { $this->_routeRule = $routeRule; $uri = new Uri(); $this->currentController = $routeRule->getController(); $this->currentAction = $routeRule->isActionRequired() ? $routeRule->getAction() : $uri->getAction(); $viewName = $this->getViewName(); $this->view = new View($viewName); $this->layout = new Layout($this->view); $this->params = $this->createParameters($routeRule, $uri); }