Skip to content

Commit c796e22

Browse files
wazumfabpot
authored andcommitted
[Messenger] Filter out non-consumable receivers when registering ConsumeMessagesCommand
1 parent 91df8ee commit c796e22

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

DependencyInjection/FrameworkExtension.php

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2282,13 +2282,17 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
22822282
$transportRateLimiterReferences = [];
22832283
foreach ($config['transports'] as $name => $transport) {
22842284
$serializerId = $transport['serializer'] ?? 'messenger.default_serializer';
2285+
$tags = [
2286+
'alias' => $name,
2287+
'is_failure_transport' => \in_array($name, $failureTransports),
2288+
];
2289+
if (str_starts_with($transport['dsn'], 'sync://')) {
2290+
$tags['is_consumable'] = false;
2291+
}
22852292
$transportDefinition = (new Definition(TransportInterface::class))
22862293
->setFactory([new Reference('messenger.transport_factory'), 'createTransport'])
22872294
->setArguments([$transport['dsn'], $transport['options'] + ['transport_name' => $name], new Reference($serializerId)])
2288-
->addTag('messenger.receiver', [
2289-
'alias' => $name,
2290-
'is_failure_transport' => \in_array($name, $failureTransports),
2291-
])
2295+
->addTag('messenger.receiver', $tags)
22922296
;
22932297
$container->setDefinition($transportId = 'messenger.transport.'.$name, $transportDefinition);
22942298
$senderAliases[$name] = $transportId;

0 commit comments

Comments
 (0)