Example #1
0
 public function get($identifier)
 {
     if (isset($this->components[$identifier])) {
         return $this->components[$identifier];
     }
     switch ($identifier) {
         case 'entity_manager':
             $this->compoents[$identifier] = new EntityManager();
             break;
         case 'vars':
             $this->components[$identifier] = new Vars();
             break;
         case 'logger':
             $this->components[$identifier] = new Logger();
             break;
         case 'db':
             $this->components[$identifier] = new Db();
             break;
         case 'router':
             $router = new Router();
             $router->initRoutingConfig();
             $this->components[$identifier] = $router;
             break;
         case 'session':
             $session = new Session();
             $session->init();
             $this->components[$identifier] = $session;
             break;
         case 'view':
             // twig loading
             $loader = new \Twig_Loader_Filesystem(ROOT_PATH . 'view');
             $twig = new \Twig_Environment($loader, array('cache' => ROOT_PATH . '/cache/compilation_cache', 'auto_reload' => true));
             $this->components[$identifier] = $twig;
             break;
         default:
             throw new Exception("component " . $identifier . " not set in " . __CLASS__ . ":" . __FUNCTION__);
     }
     return $this->components[$identifier];
 }