Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitc9bd097

Browse files
committed
use new service locator created on MessengerPass
1 parent68abaf1 commitc9bd097

File tree

2 files changed

+19
-7
lines changed

2 files changed

+19
-7
lines changed

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

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1877,7 +1877,7 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
18771877
}
18781878

18791879
$failureTransports[$config['failure_transport']] =$senderReferences[$config['failure_transport']];
1880-
$container->setAlias('messenger.failure_transports.default_transport',$config['failure_transport']);
1880+
$container->setAlias('messenger.failure_transports.default',$config['failure_transport']);
18811881
}
18821882

18831883
foreach ($config['transports']as$name =>$transport) {
@@ -1896,8 +1896,7 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
18961896
if (\count($failureTransports) >0) {
18971897
$globalFailureReceiver =$config['failure_transport'] ??null;
18981898
$container->getDefinition('console.command.messenger_failed_messages_retry')
1899-
->replaceArgument(0,$globalFailureReceiver)
1900-
->replaceArgument(1,$senderReferences[$config['failure_transport']] ??null);
1899+
->replaceArgument(0,$globalFailureReceiver);
19011900
$container->getDefinition('console.command.messenger_failed_messages_show')
19021901
->replaceArgument(0,$globalFailureReceiver);
19031902
$container->getDefinition('console.command.messenger_failed_messages_remove')

‎src/Symfony/Component/Messenger/DependencyInjection/MessengerPass.php‎

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
useSymfony\Component\DependencyInjection\Definition;
2020
useSymfony\Component\DependencyInjection\Exception\RuntimeException;
2121
useSymfony\Component\DependencyInjection\Reference;
22+
useSymfony\Component\DependencyInjection\ServiceLocator;
2223
useSymfony\Component\Messenger\Handler\HandlerDescriptor;
2324
useSymfony\Component\Messenger\Handler\HandlersLocator;
2425
useSymfony\Component\Messenger\Handler\MessageSubscriberInterface;
@@ -251,14 +252,22 @@ private function guessHandledClasses(\ReflectionClass $handlerClass, string $ser
251252
privatefunctionregisterReceivers(ContainerBuilder$container,array$busIds)
252253
{
253254
$receiverMapping = [];
254-
$failureTransportsMapping = [];
255+
$failureTransportsMap = [];
256+
257+
$globalFailureTransportId ='messenger.failure_transports.default';
258+
if ($container->hasAlias($globalFailureTransportId)) {
259+
$globalFailureTransport = (string)$container->getAlias($globalFailureTransportId);
260+
if ($globalFailureTransport !==null) {
261+
$failureTransportsMap[$globalFailureTransport] =newReference('messenger.transport.' .$globalFailureTransport);
262+
}
263+
}
255264

256265
foreach ($container->findTaggedServiceIds($this->receiverTag)as$id =>$tags) {
257266
$receiverClass =$this->getServiceClass($container,$id);
258267

259268
$tag =current($tags);
260269
if (isset($tag['failure_transport']) &&$tag['failure_transport'] !==null) {
261-
$failureTransportsMapping[$tag['failure_transport']] =newReference($tag['failure_transport']);
270+
$failureTransportsMap[$tag['failure_transport']] =newReference('messenger.transport.'.$tag['failure_transport']);
262271
}
263272

264273
if (!is_subclass_of($receiverClass, ReceiverInterface::class)) {
@@ -305,7 +314,11 @@ private function registerReceivers(ContainerBuilder $container, array $busIds)
305314
}
306315

307316
$container->getDefinition('messenger.receiver_locator')->replaceArgument(0,$receiverMapping);
308-
317+
318+
$failureTransportsLocator = (newDefinition(ServiceLocator::class))
319+
->addArgument($failureTransportsMap)
320+
->addTag('container.service_locator');
321+
309322
$failedCommandIds = [
310323
'console.command.messenger_failed_messages_retry',
311324
'console.command.messenger_failed_messages_show',
@@ -314,7 +327,7 @@ private function registerReceivers(ContainerBuilder $container, array $busIds)
314327
foreach ($failedCommandIdsas$failedCommandId) {
315328
if ($container->hasDefinition($failedCommandId)) {
316329
$definition =$container->getDefinition($failedCommandId);
317-
$definition->replaceArgument(1,$receiverMapping[$definition->getArgument(0)]);
330+
$definition->replaceArgument(1,$failureTransportsLocator);
318331
}
319332
}
320333
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp