8000 register only existing transport factories · symfony/symfony@56094a7 · GitHub
[go: up one dir, main page]

Skip to content

Commit 56094a7

Browse files
committed
register only existing transport factories
1 parent 6429999 commit 56094a7

File tree

2 files changed

+23
-11
lines changed

2 files changed

+23
-11
lines changed

src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@
8181
use Symfony\Component\Mailer\Bridge\Postmark\Transport\PostmarkTransportFactory;
8282
use Symfony\Component\Mailer\Bridge\Sendgrid\Transport\SendgridTransportFactory;
8383
use Symfony\Component\Mailer\Mailer;
84+
use Symfony\Component\Messenger\Bridge\AmazonSqs\Transport\AmazonSqsTransportFactory;
8485
use Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransportFactory;
8586
use Symfony\Component\Messenger\Bridge\Redis\Transport\RedisTransportFactory;
8687
use Symfony\Component\Messenger\Handler\MessageHandlerInterface;
@@ -323,15 +324,19 @@ public function load(array $configs, ContainerBuilder $container)
323324

324325
if ($container->hasDefinition('messenger.transport.amqp.factory') && !class_exists(AmqpTransportFactory::class)) {
325326
if (class_exists(\Symfony\Component\Messenger\Transport\AmqpExt\AmqpTransportFactory::class)) {
326-
$container->getDefinition('messenger.transport.amqp.factory')->setClass(\Symfony\Component\Messenger\Transport\AmqpExt\AmqpTransportFactory::class);
327+
$container->getDefinition('messenger.transport.amqp.factory')
328+
->setClass(\Symfony\Component\Messenger\Transport\AmqpExt\AmqpTransportFactory::class)
329+
->addTag('messenger.transport_factory');
327330
} else {
328331
$container->removeDefinition('messenger.transport.amqp.factory');
329332
}
330333
}
331334

332335
if ($container->hasDefinition('messenger.transport.redis.factory') && !class_exists(RedisTransportFactory::class)) {
333336
if (class_exists(\Symfony\Component\Messenger\Transport\RedisExt\RedisTransportFactory::class)) {
334-
$container->getDefinition('messenger.transport.redis.factory')->setClass(\Symfony\Component\Messenger\Transport\RedisExt\RedisTransportFactory::class);
337+
$container->getDefinition('messenger.transport.redis.factory')
338+
->setClass(\Symfony\Component\Messenger\Transport\RedisExt\RedisTransportFactory::class)
339+
->addTag('messenger.transport_factory');
335340
} else {
336341
$container->removeDefinition('messenger.transport.redis.factory');
337342
}
@@ -1613,6 +1618,18 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
16131618

16141619
$loader->load('messenger.xml');
16151620

1621+
if (class_exists(AmqpTransportFactory::class)) {
1622+
$container->getDefinition('messenger.transport.amqp.factory')->addTag('messenger.transport_factory');
1623+
}
1624+
1625+
if (class_exists(AmazonSqsTransportFactory::class)) {
1626+
$container->getDefinition('messenger.transport.sqs.factory')->addTag('messenger.transport_factory');
1627+
}
1628+
1629+
if (class_exists(RedisTransportFactory::class)) {
1630+
$container->getDefinition('messenger.transport.redis.factory')->addTag('messenger.transport_factory');
1631+
}
1632+
16161633
if (null === $config['default_bus'] && 1 === \count($config['buses'])) {
16171634
$config['default_bus'] = key($config['buses']);
16181635
}
@@ -1670,6 +1687,7 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
16701687
$container->removeDefinition('messenger.transport.symfony_serializer');
16711688
$container->removeDefinition('messenger.transport.amqp.factory');
16721689
$container->removeDefinition('messenger.transport.redis.factory');
1690+
$container->removeDefinition('messenger.transport.sqs.factory');
16731691
} else {
16741692
$container->getDefinition('messenger.transport.symfony_serializer')
16751693
->replaceArgument(1, $config['serializer']['symfony_serializer']['format'])

src/Symfony/Bundle/FrameworkBundle/Resources/config/messenger.xml

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,9 @@
6767
<argument type="tagged_iterator" tag="messenger.transport_factory" />
6868
</service>
6969

70-
<service id="messenger.transport.amqp.factory" class="Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransportFactory">
71-
<tag name="messenger.transport_factory" />
72-
</service>
70+
<service id="messenger.transport.amqp.factory" class="Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransportFactory"/>
7371

74-
<service id="messenger.transport.redis.factory" class="Symfony\Component\Messenger\Bridge\Redis\Transport\RedisTransportFactory">
75-
<tag name="messenger.transport_factory" />
76-
</service>
72+
<service id="messenger.transport.redis.factory" class="Symfony\Component\Messenger\Bridge\Redis\Transport\RedisTransportFactory"/>
7773

7874
<service id="messenger.transport.sync.factory" class="Symfony\Component\Messenger\Transport\Sync\SyncTransportFactory">
7975
<tag name="messenger.transport_factory" />
@@ -85,9 +81,7 @@
8581
<tag name="kernel.reset" method="reset" />
8682
</service>
8783

88-
<service id="messenger.transport.sqs.factory" class="Symfony\Component\Messenger\Bridge\AmazonSqs\Transport\AmazonSqsTransportFactory">
89-
<tag name="messenger.transport_factory" />
90-
</service>
84+
<service id="messenger.transport.sqs.factory" class="Symfony\Component\Messenger\Bridge\AmazonSqs\Transport\AmazonSqsTransportFactory"/>
9185

9286
<!-- retry -->
9387
<service id="messenger.retry_strategy_locator">

0 commit comments

Comments
 (0)
0