diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/config/schema/symfony-1.0.xsd b/src/Symfony/Bundle/FrameworkBundle/Resources/config/schema/symfony-1.0.xsd
index 0c4f6b85fc..403119842e 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/config/schema/symfony-1.0.xsd
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/config/schema/symfony-1.0.xsd
@@ -427,6 +427,7 @@
+
@@ -457,12 +458,21 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transports.php b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transports.php
index 68ff360746..0aff440e85 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transports.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transports.php
@@ -3,6 +3,7 @@
$container->loadFromExtension('framework', [
'serializer' => true,
'messenger' => [
+ 'failure_transport' => 'failed',
'serializer' => [
'default_serializer' => 'messenger.transport.symfony_serializer',
],
@@ -12,7 +13,14 @@ $container->loadFromExtension('framework', [
'dsn' => 'amqp://localhost/%2f/messages?exchange_name=exchange_name',
'options' => ['queue' => ['name' => 'Queue']],
'serializer' => 'messenger.transport.native_php_serializer',
+ 'retry_strategy' => [
+ 'max_retries' => 10,
+ 'delay' => 7,
+ 'multiplier' => 3,
+ 'max_delay' => 100,
+ ],
],
+ 'failed' => 'in-memory:///',
'redis' => 'redis://127.0.0.1:6379/messages',
],
],
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transports.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transports.xml
index bb698cbc17..837db14c1c 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transports.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transports.xml
@@ -7,7 +7,7 @@
-
+
@@ -16,7 +16,9 @@
Queue
+
+
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transports.yml b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transports.yml
index 2fc1f48265..daab75bd87 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transports.yml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transports.yml
@@ -1,6 +1,7 @@
framework:
serializer: true
messenger:
+ failure_transport: failed
serializer:
default_serializer: messenger.transport.symfony_serializer
transports:
@@ -11,4 +12,10 @@ framework:
queue:
name: Queue
serializer: 'messenger.transport.native_php_serializer'
+ retry_strategy:
+ max_retries: 10
+ delay: 7
+ multiplier: 3
+ max_delay: 100
+ failed: 'in-memory:///'
redis: 'redis://127.0.0.1:6379/messages'
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
index b65ab9e011..edcdb7aae4 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
@@ -725,6 +725,13 @@ abstract class FrameworkExtensionTest extends TestCase
$this->assertSame('redis://127.0.0.1:6379/messages', $transportArguments[0]);
$this->assertTrue($container->hasDefinition('messenger.transport.redis.factory'));
+
+ $this->assertSame(10, $container->getDefinition('messenger.retry.multiplier_retry_strategy.customised')->getArgument(0));
+ $this->assertSame(7, $container->getDefinition('messenger.retry.multiplier_retry_strategy.customised')->getArgument(1));
+ $this->assertSame(3, $container->getDefinition('messenger.retry.multiplier_retry_strategy.customised')->getArgument(2));
+ $this->assertSame(100, $container->getDefinition('messenger.retry.multiplier_retry_strategy.customised')->getArgument(3));
+
+ $this->assertEquals(new Reference('messenger.transport.failed'), $container->getDefinition('messenger.failure.send_failed_message_to_failure_transport_listener')->getArgument(0));
}
public function testMessengerRouting()