File tree 5 files changed +26
-0
lines changed
src/Symfony/Bundle/FrameworkBundle
Tests/DependencyInjection
5 files changed +26
-0
lines changed Original file line number Diff line number Diff line change 457
457
<xsd : complexType name =" messenger_transport" >
458
458
<xsd : sequence >
459
459
<xsd : element name =" options" type =" metadata" minOccurs =" 0" maxOccurs =" unbounded" />
460
+ <xsd : element name =" retry-strategy" type =" messenger_retry_strategy" minOccurs =" 0" maxOccurs =" 1" />
460
461
</xsd : sequence >
461
462
<xsd : attribute name =" name" type =" xsd:string" />
462
463
<xsd : attribute name =" serializer" type =" xsd:string" />
463
464
<xsd : attribute name =" dsn" type =" xsd:string" />
464
465
</xsd : complexType >
465
466
467
+ <xsd : complexType name =" messenger_retry_strategy" >
468
+ <xsd : attribute name =" service" type =" xsd:string" />
469
+ <xsd : attribute name =" max-retries" type =" xsd:integer" />
470
+ <xsd : attribute name =" delay" type =" xsd:integer" />
471
+ <xsd : attribute name =" multiplier" type =" xsd:float" />
472
+ <xsd : attribute name =" max-delay" type =" xsd:float" />
473
+ </xsd : complexType >
474
+
466
475
<xsd : complexType name =" messenger_bus" >
467
476
<xsd : sequence >
468
477
<xsd : element name =" middleware" type =" messenger_middleware" minOccurs =" 0" maxOccurs =" unbounded" />
Original file line number Diff line number Diff line change 12
12
'dsn ' => 'amqp://localhost/%2f/messages?exchange_name=exchange_name ' ,
13
13
'options ' => ['queue ' => ['name ' => 'Queue ' ]],
14
14
'serializer ' => 'messenger.transport.native_php_serializer ' ,
15
+ 'retry_strategy ' => [
16
+ 'max_retries ' => 10 ,
17
+ 'delay ' => 7 ,
18
+ 'multiplier ' => 3 ,
19
+ 'max_delay ' => 100 ,
20
+ ],
15
21
],
16
22
'redis ' => 'redis://127.0.0.1:6379/messages ' ,
17
23
],
Original file line number Diff line number Diff line change 16
16
<framework : name >Queue</framework : name >
17
17
</framework : queue >
18
18
</framework : options >
19
+ <framework : retry-strategy max-retries =" 10" delay =" 7" multiplier =" 3" max-delay =" 100" />
19
20
</framework : transport >
20
21
<framework : transport name =" redis" dsn =" redis://127.0.0.1:6379/messages" />
21
22
</framework : messenger >
Original file line number Diff line number Diff line change @@ -11,4 +11,9 @@ framework:
11
11
queue :
12
12
name : Queue
13
13
serializer : ' messenger.transport.native_php_serializer'
14
+ retry_strategy :
15
+ max_retries : 10
16
+ delay : 7
17
+ multiplier : 3
18
+ max_delay : 100
14
19
redis : ' redis://127.0.0.1:6379/messages'
Original file line number Diff line number Diff line change @@ -725,6 +725,11 @@ public function testMessengerTransports()
725
725
$ this ->assertSame ('redis://127.0.0.1:6379/messages ' , $ transportArguments [0 ]);
726
726
727
727
$ this ->assertTrue ($ container ->hasDefinition ('messenger.transport.redis.factory ' ));
728
+
729
+ $ this ->assertSame (10 , $ container ->getDefinition ('messenger.retry.multiplier_retry_strategy.customised ' )->getArgument (0 ));
730
+ $ this ->assertSame (7 , $ container ->getDefinition ('messenger.retry.multiplier_retry_strategy.customised ' )->getArgument (1 ));
731
+ $ this ->assertSame (3 , $ container ->getDefinition ('messenger.retry.multiplier_retry_strategy.customised ' )->getArgument (2 ));
732
+ $ this ->assertSame (100 , $ container ->getDefinition ('messenger.retry.multiplier_retry_strategy.customised ' )->getArgument (3 ));
728
733
}
729
734
730
735
public function testMessengerRouting ()
You can’t perform that action at this time.
0 commit comments