original_string: protected function registerMappingDrivers($objectManager, ContainerBuilder $container)
      {
          // configure metadata driver for each bundle based on the type of mapping files found
          if ($container->hasDefinition($this->getObjectManagerElementName($objectManager['name'].'_metadata_driver'))) {
              $chainDriverDef = $container->getDefinition($this->getObjectManagerElementName($objectManager['name'].'_metadata_driver'));
          } else {
              $chainDriverDef = new Definition('%'.$this->getObjectManagerElementName('metadata.driver_chain.class%'));
              $chainDriverDef->setPublic(false);
          }
  
          foreach ($this->drivers as $driverType => $driverPaths) {
              $mappingService = $this->getObjectManagerElementName($objectManager['name'].'_'.$driverType.'_metadata_driver');
              if ($container->hasDefinition($mappingService)) {
                  $mappingDriverDef = $container->getDefinition($mappingService);
                  $args = $mappingDriverDef->getArguments();
                  if ('annotation' == $driverType) {
                      $args[1] = array_merge(array_values($driverPaths), $args[1]);
                  } else {
                      $args[0] = array_merge(array_values($driverPaths), $args[0]);
                  }
                  $mappingDriverDef->setArguments($args);
              } elseif ('annotation' == $driverType) {
                  $mappingDriverDef = new Definition('%'.$this->getObjectManagerElementName('metadata.'.$driverType.'.class%'), [
                      new Reference($this->getObjectManagerElementName('metadata.annotation_reader')),
                      array_values($driverPaths),
                  ]);
              } else {
                  $mappingDriverDef = new Definition('%'.$this->getObjectManagerElementName('metadata.'.$driverType.'.class%'), [
                      array_values($driverPaths),
                  ]);
              }
              $mappingDriverDef->setPublic(false);
              if (false !== strpos($mappingDriverDef->getClass(), 'yml') || false !== strpos($mappingDriverDef->getClass(), 'xml')) {
                  $mappingDriverDef->setArguments([array_flip($driverPaths)]);
                  $mappingDriverDef->addMethodCall('setGlobalBasename', ['mapping']);
              }
  
              $container->setDefinition($mappingService, $mappingDriverDef);
  
              foreach ($driverPaths as $prefix => $driverPath) {
                  $chainDriverDef->addMethodCall('addDriver', [new Reference($mappingService), $prefix]);
              }
          }
  
          $container->setDefinition($this->getObjectManagerElementName($objectManager['name'].'_metadata_driver'), $chainDriverDef);
      }
code: protected function registerMappingDrivers($objectManager, ContainerBuilder $container)
      {
          // configure metadata driver for each bundle based on the type of mapping files found
          if ($container->hasDefinition($this->getObjectManagerElementName($objectManager['name'].'_metadata_driver'))) {
              $chainDriverDef = $container->getDefinition($this->getObjectManagerElementName($objectManager['name'].'_metadata_driver'));
          } else {
              $chainDriverDef = new Definition('%'.$this->getObjectManagerElementName('metadata.driver_chain.class%'));
              $chainDriverDef->setPublic(false);
          }
  
          foreach ($this->drivers as $driverType => $driverPaths) {
              $mappingService = $this->getObjectManagerElementName($objectManager['name'].'_'.$driverType.'_metadata_driver');
              if ($container->hasDefinition($mappingService)) {
                  $mappingDriverDef = $container->getDefinition($mappingService);
                  $args = $mappingDriverDef->getArguments();
                  if ('annotation' == $driverType) {
                      $args[1] = array_merge(array_values($driverPaths), $args[1]);
                  } else {
                      $args[0] = array_merge(array_values($driverPaths), $args[0]);
                  }
                  $mappingDriverDef->setArguments($args);
              } elseif ('annotation' == $driverType) {
                  $mappingDriverDef = new Definition('%'.$this->getObjectManagerElementName('metadata.'.$driverType.'.class%'), [
                      new Reference($this->getObjectManagerElementName('metadata.annotation_reader')),
                      array_values($driverPaths),
                  ]);
              } else {
                  $mappingDriverDef = new Definition('%'.$this->getObjectManagerElementName('metadata.'.$driverType.'.class%'), [
                      array_values($driverPaths),
                  ]);
              }
              $mappingDriverDef->setPublic(false);
              if (false !== strpos($mappingDriverDef->getClass(), 'yml') || false !== strpos($mappingDriverDef->getClass(), 'xml')) {
                  $mappingDriverDef->setArguments([array_flip($driverPaths)]);
                  $mappingDriverDef->addMethodCall('setGlobalBasename', ['mapping']);
              }
  
              $container->setDefinition($mappingService, $mappingDriverDef);
  
              foreach ($driverPaths as $prefix => $driverPath) {
                  $chainDriverDef->addMethodCall('addDriver', [new Reference($mappingService), $prefix]);
              }
          }
  
          $container->setDefinition($this->getObjectManagerElementName($objectManager['name'].'_metadata_driver'), $chainDriverDef);
      }
code_tokens: protected function registerMappingDrivers ( $ objectManager , ContainerBuilder $ container ) { // configure metadata driver for each bundle based on the type of mapping files found if ( $ container -> hasDefinition ( $ this -> getObjectManagerElementName ( $ objectManager [ 'name' ] . '_metadata_driver' ) ) ) { $ chainDriverDef = $ container -> getDefinition ( $ this -> getObjectManagerElementName ( $ objectManager [ 'name' ] . '_metadata_driver' ) ) ; } else { $ chainDriverDef = new Definition ( '%' . $ this -> getObjectManagerElementName ( 'metadata.driver_chain.class%' ) ) ; $ chainDriverDef -> setPublic ( false ) ; } foreach ( $ this -> drivers as $ driverType => $ driverPaths ) { $ mappingService = $ this -> getObjectManagerElementName ( $ objectManager [ 'name' ] . '_' . $ driverType . '_metadata_driver' ) ; if ( $ container -> hasDefinition ( $ mappingService ) ) { $ mappingDriverDef = $ container -> getDefinition ( $ mappingService ) ; $ args = $ mappingDriverDef -> getArguments ( ) ; if ( 'annotation' == $ driverType ) { $ args [ 1 ] = array_merge ( array_values ( $ driverPaths ) , $ args [ 1 ] ) ; } else { $ args [ 0 ] = array_merge ( array_values ( $ driverPaths ) , $ args [ 0 ] ) ; } $ mappingDriverDef -> setArguments ( $ args ) ; } elseif ( 'annotation' == $ driverType ) { $ mappingDriverDef = new Definition ( '%' . $ this -> getObjectManagerElementName ( 'metadata.' . $ driverType . '.class%' ) , [ new Reference ( $ this -> getObjectManagerElementName ( 'metadata.annotation_reader' ) ) , array_values ( $ driverPaths ) , ] ) ; } else { $ mappingDriverDef = new Definition ( '%' . $ this -> getObjectManagerElementName ( 'metadata.' . $ driverType . '.class%' ) , [ array_values ( $ driverPaths ) , ] ) ; } $ mappingDriverDef -> setPublic ( false ) ; if ( false !== strpos ( $ mappingDriverDef -> getClass ( ) , 'yml' ) || false !== strpos ( $ mappingDriverDef -> getClass ( ) , 'xml' ) ) { $ mappingDriverDef -> setArguments ( [ array_flip ( $ driverPaths ) ] ) ; $ mappingDriverDef -> addMethodCall ( 'setGlobalBasename' , [ 'mapping' ] ) ; } $ container -> setDefinition ( $ mappingService , $ mappingDriverDef ) ; foreach ( $ driverPaths as $ prefix => $ driverPath ) { $ chainDriverDef -> addMethodCall ( 'addDriver' , [ new Reference ( $ mappingService ) , $ prefix ] ) ; } } $ container -> setDefinition ( $ this -> getObjectManagerElementName ( $ objectManager [ 'name' ] . '_metadata_driver' ) , $ chainDriverDef ) ; }
docstring: Register all the collected mapping information with the object manager by registering the appropriate mapping drivers.
  
  @param array            $objectManager
  @param ContainerBuilder $container     A ContainerBuilder instance
docstring_tokens: Register all the collected mapping information with the object manager by registering the appropriate mapping drivers .