8000 Fix · symfony/symfony@e8b1f4f · GitHub
[go: up one dir, main page]

Skip to content

Commit e8b1f4f

Browse files
Fix
1 parent e317767 commit e8b1f4f

File tree

2 files changed

+56
-20
lines changed

2 files changed

+56
-20
lines changed

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

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@
111111
use Symfony\Component\Messenger\Handler\BatchHandlerInterface;
112112
use Symfony\Component\Messenger\MessageBus;
113113
use Symfony\Component\Messenger\MessageBusInterface;
114+
use Symfony\Component\Messenger\Middleware\LockMiddleware;
114115
use Symfony\Component\Messenger\Middleware\RouterContextMiddleware;
115116
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
116117
use Symfony\Component\Messenger\Transport\TransportFactoryInterface as MessengerTransportFactoryInterface;
@@ -1986,6 +1987,10 @@ private function registerLockConfiguration(array $config, ContainerBuilder $cont
19861987
{
19871988
$loader->load('lock.php');
19881989

1990+
if (!class_exists(LockMiddleware::class)) {
1991+
$container->removeDefinition('messenger.middleware.lock_middleware');
1992+
}
1993+
19891994
foreach ($config['resources'] as $resourceName => $resourceStores) {
19901995
if (0 === \count($resourceStores)) {
19911996
continue;
@@ -2124,13 +2129,16 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
21242129
['id' => 'reject_redelivered_message_middleware'],
21252130
['id' => 'dispatch_after_current_bus'],
21262131
['id' => 'failed_message_processing_middleware'],
2127-
['id' => 'lock_middleware'],
21282132
],
21292133
'after' => [
21302134
['id' => 'send_message'],
21312135
['id' => 'handle_message'],
21322136
],
21332137
];
2138+
if (class_exists(LockMiddleware::class)) {
2139+
$defaultMiddleware['before'][] = ['id' => 'lock_middleware'];
2140+
}
2141+
21342142
foreach ($config['buses'] as $busId => $bus) {
21352143
$middleware = $bus['middleware'];
21362144

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTestCase.php

Lines changed: 47 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@
6060
use Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransportFactory;
6161
use Symfony\Component\Messenger\Bridge\Beanstalkd\Transport\BeanstalkdTransportFactory;
6262
use Symfony\Component\Messenger\Bridge\Redis\Transport\RedisTransportFactory;
63+
use Symfony\Component\Messenger\Middleware\LockMiddleware;
6364
use Symfony\Component\Messenger\Transport\TransportFactory;
6465
use Symfony\Component\Notifier\ChatterInterface;
6566
use Symfony\Component\Notifier\TexterInterface;
@@ -1060,27 +1061,54 @@ public function testMessengerWithMultipleBuses()
10601061

10611062
$this->assertTrue($container->has('messenger.bus.commands'));
10621063
$this->assertSame([], $container->getDefinition('messenger.bus.commands')->getArgument(0));
1063-
$this->assertEquals([
1064-
['id' => 'add_bus_name_stamp_middleware', 'arguments' => ['messenger.bus.commands']],
1065-
['id' => 'reject_redelivered_message_middleware'],
1066-
['id' => 'dispatch_after_current_bus'],
1067-
['id' => 'failed_message_processing_middleware'],
1068-
['id' => 'lock_middleware'],
1069-
['id' => 'send_message', 'arguments' => [true]],
1070-
['id' => 'handle_message', 'arguments' => [false]],
1071-
], $container->getParameter('messenger.bus.commands.middleware'));
1064+
1065+
if (class_exists(LockMiddleware::class)) {
1066+
$this->assertEquals([
1067+
['id' => 'add_bus_name_stamp_middleware', 'arguments' => ['messenger.bus.commands']],
1068+
['id' => 'reject_redelivered_message_middleware'],
1069+
['id' => 'dispatch_after_current_bus'],
1070+
['id' 8000 ; => 'failed_message_processing_middleware'],
1071+
['id' => 'lock_middleware'],
1072+
['id' => 'send_message', 'arguments' => [true]],
1073+
['id' => 'handle_message', 'arguments' => [false]],
1074+
], $container->getParameter('messenger.bus.commands.middleware'));
1075+
} else {
1076+
$this->assertEquals([
1077+
['id' => 'add_bus_name_stamp_middleware', 'arguments' => ['messenger.bus.commands']],
1078+
['id' => 'reject_redelivered_message_middleware'],
1079+
['id' => 'dispatch_after_current_bus'],
1080+
['id' => 'failed_message_processing_middleware'],
1081+
['id' => 'send_message', 'arguments' => [true]],
1082+
['id' => 'handle_message', 'arguments' => [false]],
1083+
], $container->getParameter('messenger.bus.commands.middleware'));
1084+
}
1085+
10721086
$this->assertTrue($container->has('messenger.bus.events'));
10731087
$this->assertSame([], $container->getDefinition('messenger.bus.events')->getArgument(0));
1074-
$this->assertEquals([
1075-
['id' => 'add_bus_name_stamp_middleware', 'arguments' => ['messenger.bus.events']],
1076-
['id' => 'reject_redelivered_message_middleware'],
1077-
['id' => 'dispatch_after_current_bus'],
1078-
['id' => 'failed_message_processing_middleware'],
1079-
['id' => 'lock_middleware'],
1080-
['id' => 'with_factory', 'arguments' => ['foo', true, ['bar' => 'baz']]],
1081-
['id' => 'send_message', 'arguments' => [true]],
1082-
['id' => 'handle_message', 'arguments' => [false]],
1083-
], $container->getParameter('messenger.bus.events.middleware'));
1088+
1089+
if (class_exists(LockMiddleware::class)) {
1090+
$this->assertEquals([
1091+
['id' => 'add_bus_name_stamp_middleware', 'arguments' => ['messenger.bus.events']],
1092+
['id' => 'reject_redelivered_message_middleware'],
1093+
['id' => 'dispatch_after_current_bus'],
1094+
['id' => 'failed_message_processing_middleware'],
1095+
['id' => 'lock_middleware'],
1096+
['id' => 'with_factory', 'arguments' => ['foo', true, ['bar' => 'baz']]],
1097+
['id' => 'send_message', 'arguments' => [true]],
1098+
['id' => 'handle_message', 'arguments' => [false]],
1099+
], $container->getParameter('messenger.bus.events.middleware'));
1100+
} else {
1101+
$this->assertEquals([
1102+
['id' => 'add_bus_name_stamp_middleware', 'arguments' => ['messenger.bus.events']],
1103+
['id' => 'reject_redelivered_message_middleware'],
1104+
['id' => 'dispatch_after_current_bus'],
1105+
['id' => 'failed_message_processing_middleware'],
1106+
['id' => 'with_factory', 'arguments' => ['foo', true, ['bar' => 'baz']]],
1107+
['id' => 'send_message', 'arguments' => [true]],
1108+
['id' => 'handle_message', 'arguments' => [false]],
1109+
], $container->getParameter('messenger.bus.events.middleware'));
1110+
}
1111+
10841112
$this->assertTrue($container->has('messenger.bus.queries'));
10851113
$this->assertSame([], $container->getDefinition('messenger.bus.queries')->getArgument(0));
10861114
$this->assertEquals([

0 commit comments

Comments
 (0)
0