DependencyInjection/DoctrineMongoDBExtension.php
public function load(array $configs, ContainerBuilder $container)
    {
        // Load DoctrineMongoDBBundle/Resources/config/mongodb.xml
        $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));

        $configuration = new Configuration();
        $config        = $this->processConfiguration($configuration, $configs);

        $loader->load('mongodb.xml');

        if (empty($config['default_connection'])) {
            $keys                         = array_keys($config['connections']);
            $config['default_connection'] = reset($keys);
        }
        $container->setParameter('doctrine_mongodb.odm.default_connection', $config['default_connection']);

        if (empty($config['default_document_manager'])) {
            $keys                               = array_keys($config['document_managers']);
            $config['default_document_manager'] = reset($keys);
        }
        $container->setParameter('doctrine_mongodb.odm.default_document_manager', $config['default_document_manager']);

        // set some options as parameters and unset them
        $config = $this->overrideParameters($config, $container);

        // set the fixtures loader
        $container->setParameter('doctrine_mongodb.odm.fixture_loader', $config['fixture_loader']);

        // load the connections
        $this->loadConnections($config['connections'], $container);

        $config['document_managers'] = $this->fixManagersAutoMappings($config['document_managers'], $container->getParameter('kernel.bundles'));

        // load the document managers
        $this->loadDocumentManagers(
            $config['document_managers'],
            $config['default_document_manager'],
            $config['default_database'],
            $container
        );

        if ($config['resolve_target_documents']) {
            $def = $container->findDefinition('doctrine_mongodb.odm.listeners.resolve_target_document');
            foreach ($config['resolve_target_documents'] as $name => $implementation) {
                $def->addMethodCall('addResolveTargetDocument', [$name, $implementation, []]);
            }
            $def->addTag('doctrine_mongodb.odm.event_listener', ['event' => 'loadClassMetadata']);
        }

        // BC Aliases for Document Manager
        $container->setAlias('doctrine.odm.mongodb.document_manager', new Alias('doctrine_mongodb.odm.document_manager'));

        $container->registerForAutoconfiguration(ServiceDocumentRepositoryInterface::class)
            ->addTag(ServiceRepositoryCompilerPass::REPOSITORY_SERVICE_TAG);
    }
public function load(array $configs, ContainerBuilder $container)
    {
        // Load DoctrineMongoDBBundle/Resources/config/mongodb.xml
        $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));

        $configuration = new Configuration();
        $config        = $this->processConfiguration($configuration, $configs);

        $loader->load('mongodb.xml');

        if (empty($config['default_connection'])) {
            $keys                         = array_keys($config['connections']);
            $config['default_connection'] = reset($keys);
        }
        $container->setParameter('doctrine_mongodb.odm.default_connection', $config['default_connection']);

        if (empty($config['default_document_manager'])) {
            $keys                               = array_keys($config['document_managers']);
            $config['default_document_manager'] = reset($keys);
        }
        $container->setParameter('doctrine_mongodb.odm.default_document_manager', $config['default_document_manager']);

        // set some options as parameters and unset them
        $config = $this->overrideParameters($config, $container);

        // set the fixtures loader
        $container->setParameter('doctrine_mongodb.odm.fixture_loader', $config['fixture_loader']);

        // load the connections
        $this->loadConnections($config['connections'], $container);

        $config['document_managers'] = $this->fixManagersAutoMappings($config['document_managers'], $container->getParameter('kernel.bundles'));

        // load the document managers
        $this->loadDocumentManagers(
            $config['document_managers'],
            $config['default_document_manager'],
            $config['default_database'],
            $container
        );

        if ($config['resolve_target_documents']) {
            $def = $container->findDefinition('doctrine_mongodb.odm.listeners.resolve_target_document');
            foreach ($config['resolve_target_documents'] as $name => $implementation) {
                $def->addMethodCall('addResolveTargetDocument', [$name, $implementation, []]);
            }
            $def->addTag('doctrine_mongodb.odm.event_listener', ['event' => 'loadClassMetadata']);
        }

        // BC Aliases for Document Manager
        $container->setAlias('doctrine.odm.mongodb.document_manager', new Alias('doctrine_mongodb.odm.document_manager'));

        $container->registerForAutoconfiguration(ServiceDocumentRepositoryInterface::class)
            ->addTag(ServiceRepositoryCompilerPass::REPOSITORY_SERVICE_TAG);
    }
public function load ( array $ configs , ContainerBuilder $ container ) { // Load DoctrineMongoDBBundle/Resources/config/mongodb.xml $ loader = new XmlFileLoader ( $ container , new FileLocator ( __DIR__ . '/../Resources/config' ) ) ; $ configuration = new Configuration ( ) ; $ config = $ this -> processConfiguration ( $ configuration , $ configs ) ; $ loader -> load ( 'mongodb.xml' ) ; if ( empty ( $ config [ 'default_connection' ] ) ) { $ keys = array_keys ( $ config [ 'connections' ] ) ; $ config [ 'default_connection' ] = reset ( $ keys ) ; } $ container -> setParameter ( 'doctrine_mongodb.odm.default_connection' , $ config [ 'default_connection' ] ) ; if ( empty ( $ config [ 'default_document_manager' ] ) ) { $ keys = array_keys ( $ config [ 'document_managers' ] ) ; $ config [ 'default_document_manager' ] = reset ( $ keys ) ; } $ container -> setParameter ( 'doctrine_mongodb.odm.default_document_manager' , $ config [ 'default_document_manager' ] ) ; // set some options as parameters and unset them $ config = $ this -> overrideParameters ( $ config , $ container ) ; // set the fixtures loader $ container -> setParameter ( 'doctrine_mongodb.odm.fixture_loader' , $ config [ 'fixture_loader' ] ) ; // load the connections $ this -> loadConnections ( $ config [ 'connections' ] , $ container ) ; $ config [ 'document_managers' ] = $ this -> fixManagersAutoMappings ( $ config [ 'document_managers' ] , $ container -> getParameter ( 'kernel.bundles' ) ) ; // load the document managers $ this -> loadDocumentManagers ( $ config [ 'document_managers' ] , $ config [ 'default_document_manager' ] , $ config [ 'default_database' ] , $ container ) ; if ( $ config [ 'resolve_target_documents' ] ) { $ def = $ container -> findDefinition ( 'doctrine_mongodb.odm.listeners.resolve_target_document' ) ; foreach ( $ config [ 'resolve_target_documents' ] as $ name => $ implementation ) { $ def -> addMethodCall ( 'addResolveTargetDocument' , [ $ name , $ implementation , [ ] ] ) ; } $ def -> addTag ( 'doctrine_mongodb.odm.event_listener' , [ 'event' => 'loadClassMetadata' ] ) ; } // BC Aliases for Document Manager $ container -> setAlias ( 'doctrine.odm.mongodb.document_manager' , new Alias ( 'doctrine_mongodb.odm.document_manager' ) ) ; $ container -> registerForAutoconfiguration ( ServiceDocumentRepositoryInterface :: class ) -> addTag ( ServiceRepositoryCompilerPass :: REPOSITORY_SERVICE_TAG ) ; }
Responds to the doctrine_mongodb configuration parameter.
Responds to the doctrine_mongodb configuration parameter .