protected function createConfiguration()
    {

        // load the persistence unit configuration
        $persistenceUnitNode = $this->getPersistenceUnitNode();

        // load the metadata configuration
        $metadataConfiguration = $persistenceUnitNode->getMetadataConfiguration();

        // prepare the setup properties
        $absolutePaths = $metadataConfiguration->getDirectoriesAsArray();
        $proxyDir = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_PROXY_DIR);
        $proxyNamespace = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_PROXY_NAMESPACE);
        $autoGenerateProxyClasses = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_AUTO_GENERATE_PROXY_CLASSES);
        $useSimpleAnnotationReader = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_USE_SIMPLE_ANNOTATION_READER);

        // load the metadata driver factory class name
        $metadataDriverFactory = $metadataConfiguration->getFactory();

        // initialize the params to be passed to the factory
        $metadataDriverParams = array(DriverKeys::USE_SIMPLE_ANNOTATION_READER => $useSimpleAnnotationReader);

        // create the Doctrine ORM configuration
        $configuration = new Configuration();
        $configuration->setMetadataDriverImpl($metadataDriverFactory::get($configuration, $absolutePaths, $metadataDriverParams));

        // initialize the metadata cache configuration
        $metadataCacheConfiguration = $persistenceUnitNode->getMetadataCacheConfiguration();
        $configuration->setMetadataCacheImpl($this->getCacheImpl($metadataCacheConfiguration));

        // initialize the query cache configuration
        $queryCacheConfiguration = $persistenceUnitNode->getQueryCacheConfiguration();
        $configuration->setQueryCacheImpl($this->getCacheImpl($queryCacheConfiguration));

        // initialize the result cache configuration
        $resultCacheConfiguration = $persistenceUnitNode->getResultCacheConfiguration();
        $configuration->setResultCacheImpl($this->getCacheImpl($resultCacheConfiguration));

        // proxy configuration
        $configuration->setProxyDir($proxyDir = $proxyDir ?: sys_get_temp_dir());
        $configuration->setProxyNamespace($proxyNamespace = $proxyNamespace ?: 'Doctrine\Proxy');
        $configuration->setAutoGenerateProxyClasses($autoGenerateProxyClasses = $autoGenerateProxyClasses ?: true);

        // repository configuration
        $configuration->setDefaultRepositoryClassName($persistenceUnitNode->getDefaultRepositoryClassName());
        $configuration->setRepositoryFactory($this->getApplication()->search($persistenceUnitNode->getRepositoryFactory()));

        // return the configuration instance
        return $configuration;
    }
protected function createConfiguration()
    {

        // load the persistence unit configuration
        $persistenceUnitNode = $this->getPersistenceUnitNode();

        // load the metadata configuration
        $metadataConfiguration = $persistenceUnitNode->getMetadataConfiguration();

        // prepare the setup properties
        $absolutePaths = $metadataConfiguration->getDirectoriesAsArray();
        $proxyDir = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_PROXY_DIR);
        $proxyNamespace = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_PROXY_NAMESPACE);
        $autoGenerateProxyClasses = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_AUTO_GENERATE_PROXY_CLASSES);
        $useSimpleAnnotationReader = $metadataConfiguration->getParam(MetadataConfigurationInterface::PARAM_USE_SIMPLE_ANNOTATION_READER);

        // load the metadata driver factory class name
        $metadataDriverFactory = $metadataConfiguration->getFactory();

        // initialize the params to be passed to the factory
        $metadataDriverParams = array(DriverKeys::USE_SIMPLE_ANNOTATION_READER => $useSimpleAnnotationReader);

        // create the Doctrine ORM configuration
        $configuration = new Configuration();
        $configuration->setMetadataDriverImpl($metadataDriverFactory::get($configuration, $absolutePaths, $metadataDriverParams));

        // initialize the metadata cache configuration
        $metadataCacheConfiguration = $persistenceUnitNode->getMetadataCacheConfiguration();
        $configuration->setMetadataCacheImpl($this->getCacheImpl($metadataCacheConfiguration));

        // initialize the query cache configuration
        $queryCacheConfiguration = $persistenceUnitNode->getQueryCacheConfiguration();
        $configuration->setQueryCacheImpl($this->getCacheImpl($queryCacheConfiguration));

        // initialize the result cache configuration
        $resultCacheConfiguration = $persistenceUnitNode->getResultCacheConfiguration();
        $configuration->setResultCacheImpl($this->getCacheImpl($resultCacheConfiguration));

        // proxy configuration
        $configuration->setProxyDir($proxyDir = $proxyDir ?: sys_get_temp_dir());
        $configuration->setProxyNamespace($proxyNamespace = $proxyNamespace ?: 'Doctrine\Proxy');
        $configuration->setAutoGenerateProxyClasses($autoGenerateProxyClasses = $autoGenerateProxyClasses ?: true);

        // repository configuration
        $configuration->setDefaultRepositoryClassName($persistenceUnitNode->getDefaultRepositoryClassName());
        $configuration->setRepositoryFactory($this->getApplication()->search($persistenceUnitNode->getRepositoryFactory()));

        // return the configuration instance
        return $configuration;
    }
protected function createConfiguration ( ) { // load the persistence unit configuration $ persistenceUnitNode = $ this -> getPersistenceUnitNode ( ) ; // load the metadata configuration $ metadataConfiguration = $ persistenceUnitNode -> getMetadataConfiguration ( ) ; // prepare the setup properties $ absolutePaths = $ metadataConfiguration -> getDirectoriesAsArray ( ) ; $ proxyDir = $ metadataConfiguration -> getParam ( MetadataConfigurationInterface :: PARAM_PROXY_DIR ) ; $ proxyNamespace = $ metadataConfiguration -> getParam ( MetadataConfigurationInterface :: PARAM_PROXY_NAMESPACE ) ; $ autoGenerateProxyClasses = $ metadataConfiguration -> getParam ( MetadataConfigurationInterface :: PARAM_AUTO_GENERATE_PROXY_CLASSES ) ; $ useSimpleAnnotationReader = $ metadataConfiguration -> getParam ( MetadataConfigurationInterface :: PARAM_USE_SIMPLE_ANNOTATION_READER ) ; // load the metadata driver factory class name $ metadataDriverFactory = $ metadataConfiguration -> getFactory ( ) ; // initialize the params to be passed to the factory $ metadataDriverParams = array ( DriverKeys :: USE_SIMPLE_ANNOTATION_READER => $ useSimpleAnnotationReader ) ; // create the Doctrine ORM configuration $ configuration = new Configuration ( ) ; $ configuration -> setMetadataDriverImpl ( $ metadataDriverFactory :: get ( $ configuration , $ absolutePaths , $ metadataDriverParams ) ) ; // initialize the metadata cache configuration $ metadataCacheConfiguration = $ persistenceUnitNode -> getMetadataCacheConfiguration ( ) ; $ configuration -> setMetadataCacheImpl ( $ this -> getCacheImpl ( $ metadataCacheConfiguration ) ) ; // initialize the query cache configuration $ queryCacheConfiguration = $ persistenceUnitNode -> getQueryCacheConfiguration ( ) ; $ configuration -> setQueryCacheImpl ( $ this -> getCacheImpl ( $ queryCacheConfiguration ) ) ; // initialize the result cache configuration $ resultCacheConfiguration = $ persistenceUnitNode -> getResultCacheConfiguration ( ) ; $ configuration -> setResultCacheImpl ( $ this -> getCacheImpl ( $ resultCacheConfiguration ) ) ; // proxy configuration $ configuration -> setProxyDir ( $ proxyDir = $ proxyDir ? : sys_get_temp_dir ( ) ) ; $ configuration -> setProxyNamespace ( $ proxyNamespace = $ proxyNamespace ? : 'Doctrine\Proxy' ) ; $ configuration -> setAutoGenerateProxyClasses ( $ autoGenerateProxyClasses = $ autoGenerateProxyClasses ? : true ) ; // repository configuration $ configuration -> setDefaultRepositoryClassName ( $ persistenceUnitNode -> getDefaultRepositoryClassName ( ) ) ; $ configuration -> setRepositoryFactory ( $ this -> getApplication ( ) -> search ( $ persistenceUnitNode -> getRepositoryFactory ( ) ) ) ; // return the configuration instance return $ configuration ; }
Create's and return's a new Doctrine ORM configuration instance.

@return \Doctrine\ORM\Configuration The configuration instance
Create s and return s a new Doctrine ORM configuration instance .