vendor/enqueue/enqueue-bundle/EnqueueBundle.php line 22

Open in your IDE?
  1. <?php
  2. namespace Enqueue\Bundle;
  3. use Enqueue\AsyncEventDispatcher\DependencyInjection\AsyncEventDispatcherExtension;
  4. use Enqueue\AsyncEventDispatcher\DependencyInjection\AsyncEventsPass;
  5. use Enqueue\AsyncEventDispatcher\DependencyInjection\AsyncTransformersPass;
  6. use Enqueue\Doctrine\DoctrineSchemaCompilerPass;
  7. use Enqueue\Symfony\Client\DependencyInjection\AnalyzeRouteCollectionPass;
  8. use Enqueue\Symfony\Client\DependencyInjection\BuildClientExtensionsPass;
  9. use Enqueue\Symfony\Client\DependencyInjection\BuildCommandSubscriberRoutesPass as BuildClientCommandSubscriberRoutesPass;
  10. use Enqueue\Symfony\Client\DependencyInjection\BuildConsumptionExtensionsPass as BuildClientConsumptionExtensionsPass;
  11. use Enqueue\Symfony\Client\DependencyInjection\BuildProcessorRegistryPass as BuildClientProcessorRegistryPass;
  12. use Enqueue\Symfony\Client\DependencyInjection\BuildProcessorRoutesPass as BuildClientProcessorRoutesPass;
  13. use Enqueue\Symfony\Client\DependencyInjection\BuildTopicSubscriberRoutesPass as BuildClientTopicSubscriberRoutesPass;
  14. use Enqueue\Symfony\DependencyInjection\BuildConsumptionExtensionsPass;
  15. use Enqueue\Symfony\DependencyInjection\BuildProcessorRegistryPass;
  16. use Symfony\Component\DependencyInjection\Compiler\PassConfig;
  17. use Symfony\Component\DependencyInjection\ContainerBuilder;
  18. use Symfony\Component\HttpKernel\Bundle\Bundle;
  19. class EnqueueBundle extends Bundle
  20. {
  21. public function build(ContainerBuilder $container): void
  22. {
  23. //transport passes
  24. $container->addCompilerPass(new BuildConsumptionExtensionsPass());
  25. $container->addCompilerPass(new BuildProcessorRegistryPass());
  26. //client passes
  27. $container->addCompilerPass(new BuildClientConsumptionExtensionsPass());
  28. $container->addCompilerPass(new BuildClientExtensionsPass());
  29. $container->addCompilerPass(new BuildClientTopicSubscriberRoutesPass(), PassConfig::TYPE_BEFORE_OPTIMIZATION, 100);
  30. $container->addCompilerPass(new BuildClientCommandSubscriberRoutesPass(), PassConfig::TYPE_BEFORE_OPTIMIZATION, 100);
  31. $container->addCompilerPass(new BuildClientProcessorRoutesPass(), PassConfig::TYPE_BEFORE_OPTIMIZATION, 100);
  32. $container->addCompilerPass(new AnalyzeRouteCollectionPass(), PassConfig::TYPE_BEFORE_OPTIMIZATION, 30);
  33. $container->addCompilerPass(new BuildClientProcessorRegistryPass());
  34. if (class_exists(AsyncEventDispatcherExtension::class)) {
  35. $container->addCompilerPass(new AsyncEventsPass(), PassConfig::TYPE_BEFORE_OPTIMIZATION, 100);
  36. $container->addCompilerPass(new AsyncTransformersPass(), PassConfig::TYPE_BEFORE_OPTIMIZATION, 100);
  37. }
  38. $container->addCompilerPass(new DoctrineSchemaCompilerPass());
  39. }
  40. }