81
81
use Symfony \Component \Mailer \Bridge \Postmark \Transport \PostmarkTransportFactory ;
82
82
use Symfony \Component \Mailer \Bridge \Sendgrid \Transport \SendgridTransportFactory ;
83
83
use Symfony \Component \Mailer \Mailer ;
84
+ use Symfony \Component \Messenger \Bridge \AmazonSqs \Transport \AmazonSqsTransportFactory ;
84
85
use Symfony \Component \Messenger \Bridge \Amqp \Transport \AmqpTransportFactory ;
85
86
use Symfony \Component \Messenger \Bridge \Redis \Transport \RedisTransportFactory ;
86
87
use Symfony \Component \Messenger \Handler \MessageHandlerInterface ;
@@ -321,14 +322,24 @@ public function load(array $configs, ContainerBuilder $container)
321
322
$ container ->removeDefinition ('console.command.messenger_failed_messages_remove ' );
322
323
$ container ->removeDefinition ('cache.messenger.restart_workers_signal ' );
323
324
324
- if ($ container ->hasDefinition ('messenger.transport.amqp.factory ' ) && class_exists (AmqpTransportFactory::class)) {
325
- $ container ->getDefinition ('messenger.transport.amqp.factory ' )
326
- ->addTag ('messenger.transport_factory ' );
325
+ if ($ container ->hasDefinition ('messenger.transport.amqp.factory ' ) && !class_exists (AmqpTransportFactory::class)) {
326
+ if (class_exists (\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 ' );
330
+ } else {
331
+ $ container ->removeDefinition ('messenger.transport.amqp.factory ' );
332
+ }
327
333
}
328
334
329
- if ($ container ->hasDefinition ('messenger.transport.redis.factory ' ) && class_exists (RedisTransportFactory::class)) {
330
- $ container ->getDefinition ('messenger.transport.redis.factory ' )
331
- ->addTag ('messenger.transport_factory ' );
335
+ if ($ container ->hasDefinition ('messenger.transport.redis.factory ' ) && !class_exists (RedisTransportFactory::class)) {
336
+ if (class_exists (\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 ' );
340
+ } else {
341
+ $ container ->removeDefinition ('messenger.transport.redis.factory ' );
342
+ }
332
343
}
333
344
}
334
345
@@ -1615,6 +1626,10 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
1615
1626
$ container ->getDefinition ('messenger.transport.redis.factory ' )->addTag ('messenger.transport_factory ' );
1616
1627
}
1617
1628
1629
+ if (class_exists (AmazonSqsTransportFactory::class)) {
1630
+ $ container ->getDefinition ('messenger.transport.sqs.factory ' )->addTag ('messenger.transport_factory ' );
1631
+ }
1632
+
1618
1633
if (null === $ config ['default_bus ' ] && 1 === \count ($ config ['buses ' ])) {
1619
1634
$ config ['default_bus ' ] = key ($ config ['buses ' ]);
1620
1635
}
@@ -1672,6 +1687,7 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
1672
1687
$ container ->removeDefinition ('messenger.transport.symfony_serializer ' );
1673
1688
$ container ->removeDefinition ('messenger.transport.amqp.factory ' );
1674
1689
$ container ->removeDefinition ('messenger.transport.redis.factory ' );
1690
+ $ container ->removeDefinition ('messenger.transport.sqs.factory ' );
1675
1691
} else {
1676
1692
$ container ->getDefinition ('messenger.transport.symfony_serializer ' )
1677
1693
->replaceArgument (1 , $ config ['serializer ' ]['symfony_serializer ' ]['format ' ])
0 commit comments