/** * Handles a page connected to the processes route */ public function process() { // TODO: observer entity_process_before pass $this (?) $routeResolver = $this->balcon->getRouteResolver(); $page = new Page($routeResolver->getRoute()); $page->process(); $this->setEntity($page); }
/** * Processes the requested route. Registers current resolver if * the route can be processed by CMS module * * @param string $route */ public function process($route) { /* Check if route resolver has not been registered yet */ if (!$this->balcon->getRouteResolver()) { $this->setRoute($route); $this->setEntity(new Page($route)); $this->getEntity()->process(); /* Check if the route can be processed by CMS module. if yes - register current resolver */ if ($this->getEntity()->isProcessed()) { $this->balcon->setRouteResolver($this); } } }
/** * Returns true if current resolver can process the request * * @param EntityInterface $entity * @return bool */ protected function requestCanBeHandled(EntityInterface $entity) { return !$this->balcon->getResponseResolver() && $entity instanceof Page && $entity->isProcessed(); }