Example #1
0
 public function initAppServiceContainer($container_class = 'AppServiceContainer')
 {
     $builder = new ContainerBuilder();
     $configuration = AppKernel::getInstance()->getConfiguration();
     $parameters = $configuration->parameters;
     $parameters = $parameters->toArray();
     $parameters = $builder->resolveValue($parameters, array('parameters' => $parameters));
     $parameters = new Configuration($parameters);
     $configuration->parameters = $parameters;
     if (!isset($this->_serviceContainer)) {
         $container_path = CACHE_ROOT . '/' . $container_class . '.php';
         if (!file_exists($container_path) || ENV != 'online') {
             $builder->setClassName($container_class);
             $builder->setPath($container_path);
             $builder->dump($this->getConfiguration());
         }
         require_once $container_path;
         $this->_serviceContainer = call_user_func(array($container_class, 'getInstance'));
     }
 }