vendor/dukecity/command-scheduler-bundle/DukecityCommandSchedulerBundle.php line 12

Open in your IDE?
  1. <?php
  2. namespace Dukecity\CommandSchedulerBundle;
  3. use Doctrine\Bundle\DoctrineBundle\DependencyInjection\Compiler\DoctrineOrmMappingsPass;
  4. use Dukecity\CommandSchedulerBundle\DependencyInjection\DukecityCommandSchedulerExtension;
  5. use Symfony\Component\DependencyInjection\ContainerBuilder;
  6. use Symfony\Component\DependencyInjection\Definition;
  7. use Symfony\Component\HttpKernel\Bundle\Bundle;
  8. use Doctrine\ORM\Mapping\Driver\AttributeDriver;
  9. class DukecityCommandSchedulerBundle extends Bundle
  10. {
  11.     public function build(ContainerBuilder $container): void
  12.     {
  13.         parent::build($container);
  14.         $ormCompilerClass DoctrineOrmMappingsPass::class;
  15.         if (class_exists($ormCompilerClass))
  16.         {
  17.             $namespaces = ['Dukecity\CommandSchedulerBundle\Entity'];
  18.             $directories = [realpath(__DIR__.'/Entity')];
  19.             $managerParameters = [];
  20.             $enabledParameter false;
  21.             $driver = new Definition(AttributeDriver::class, [$directories]);
  22.             $container->addCompilerPass(
  23.                 new DoctrineOrmMappingsPass(
  24.                     $driver,
  25.                     $namespaces,
  26.                     $managerParameters,
  27.                     $enabledParameter
  28.                 )
  29.             );
  30.                 # TODO
  31.             /** If this is merged it could be renamed https://github.com/doctrine/DoctrineBundle/pull/1369/files
  32.              * new DoctrineOrmMappingsPass(
  33.              * DoctrineOrmMappingsPass::createPhpMappingDriver(
  34.              * $namespaces,
  35.             $directories,
  36.             $managerParameters,
  37.             $enabledParameter,
  38.             $aliasMap)
  39.              */
  40.         }
  41.     }
  42.     /**
  43.      * {@inheritdoc}
  44.      */
  45.     public function getContainerExtension(): DukecityCommandSchedulerExtension
  46.     {
  47.         $class $this->getContainerExtensionClass();
  48.         return new $class();
  49.     }
  50.     /**
  51.      * {@inheritdoc}
  52.      */
  53.     protected function getContainerExtensionClass(): string
  54.     {
  55.         return DukecityCommandSchedulerExtension::class;
  56.     }
  57. }