vendor/zenstruck/foundry/src/ZenstruckFoundryBundle.php line 16

Open in your IDE?
  1. <?php
  2. namespace Zenstruck\Foundry;
  3. use Symfony\Component\DependencyInjection\ContainerBuilder;
  4. use Symfony\Component\DependencyInjection\Extension\ExtensionInterface;
  5. use Symfony\Component\HttpKernel\Bundle\Bundle;
  6. use Zenstruck\Foundry\Bundle\DependencyInjection\ChainManagerRegistryPass;
  7. use Zenstruck\Foundry\Bundle\DependencyInjection\ZenstruckFoundryExtension;
  8. /**
  9.  * Must be at src root to be auto-configured by Symfony Flex.
  10.  *
  11.  * @author Kevin Bond <kevinbond@gmail.com>
  12.  */
  13. final class ZenstruckFoundryBundle extends Bundle
  14. {
  15.     public function boot(): void
  16.     {
  17.         if (!Factory::isBooted()) {
  18.             Factory::boot($this->container->get(Configuration::class));
  19.         }
  20.     }
  21.     public function build(ContainerBuilder $container): void
  22.     {
  23.         parent::build($container);
  24.         $container->addCompilerPass(new ChainManagerRegistryPass());
  25.     }
  26.     protected function createContainerExtension(): ?ExtensionInterface
  27.     {
  28.         return new ZenstruckFoundryExtension();
  29.     }
  30. }