/** * creates a entity manager instance if database settings are given * * @return void */ protected function createEntityManager() { // @TODO enhance error handling if ($connectionParameters = $this->manager->getDatabase()) { $metadataConfiguration = Setup::createAnnotationMetadataConfiguration(array(NOA_MODEL_DIR), true); $entityManger = EntityManager::create($connectionParameters, $metadataConfiguration); // persists entity manager into the object manager $this->objectManager->set($entityManger); } }
/** * Returns the session name. if no name is configured the default value will be used * * @return string */ protected function getSessionName() { if ($this->sessionName === null) { if (isset($this->manager->getConfig("session")["name"])) { $this->sessionName = $this->manager->getConfig("session")["name"]; } else { $this->sessionName = Keys::SESSION_NAME; } } return $this->sessionName; }
/** * Returns the configured request handler class name for current uri * * @return mixed */ protected function getHandlerClass() { $routes = $this->manager->getRoutes(); foreach ($routes as $route => $handler) { if (substr($route, -1) === "\$") { $route = substr($route, 0, -1); if ($route === $this->request->getUri()) { return $handler; } } else { if (strpos($this->request->getUri(), $route) === 0) { return $handler; } } } if (isset($routes["*"])) { return $routes["*"]; } return false; }
/** * Returns teh SessionHandler instance * * @return DefaultSessionHandler */ protected function getCurrentSessionHandler() { $sessionHandlerClass = $this->manager->getSessionHandler(); $className = self::HANDLER_NAMESPACE . $sessionHandlerClass; return $this->objectManager->getInstance($className); }