/** * Appends the routes and filters to route manager * * @param RouteManager $manager * @param stdClass $metadata * * @return RouteManager */ private function configureManager(RouteManager $manager, stdClass $metadata) { foreach ($metadata->routes as $route) { $manager->addRoute($route->pattern, $route->handler); } if (isset($metadata->filters)) { foreach ($metadata->filters as $filter) { $manager->addFilter($filter->pattern, $filter->handler, $filter->before, $filter->httpMethods); } } return $manager; }
/** * Executes the application */ public function run() { $this->errorHandler->setRequest($this->getRequest()); $this->errorHandler->setResponse($this->getResponse()); try { ob_start(); $this->routeManager->process($this); ob_end_clean(); } catch (\Exception $error) { $this->errorHandler->handle($error); } $this->sendResponse(); }