File tree Expand file tree Collapse file tree
tests/DependencyInjection Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1010use Symfony \Bridge \Doctrine \Messenger \DoctrinePingConnectionMiddleware ;
1111use Symfony \Bridge \Doctrine \Messenger \DoctrineTransactionMiddleware ;
1212use Symfony \Bridge \Doctrine \SchemaListener \MessengerTransportDoctrineSchemaListener ;
13+ use Symfony \Component \Messenger \Bridge \Doctrine \EventListener \PostgreSqlNotifyOnIdleListener ;
1314use Symfony \Component \Messenger \Bridge \Doctrine \Transport \DoctrineTransportFactory ;
1415
1516return static function (ContainerConfigurator $ container ): void {
5152 ->tag ('messenger.transport_factory ' )
5253 ->args ([
5354 service ('doctrine ' ),
55+ service ('messenger.transport.doctrine.pg_notify_on_idle_listener ' )->ignoreOnInvalid (),
5456 ])
5557
5658 ->set ('doctrine.orm.messenger.doctrine_schema_listener ' , MessengerTransportDoctrineSchemaListener::class)
5759 ->args ([
5860 tagged_iterator ('messenger.receiver ' ),
5961 ])
6062 ->tag ('doctrine.event_listener ' , ['event ' => 'postGenerateSchema ' ])
61- ->tag ('doctrine.event_listener ' , ['event ' => 'onSchemaCreateTable ' ]);
63+ ->tag ('doctrine.event_listener ' , ['event ' => 'onSchemaCreateTable ' ])
64+
65+ ->set ('messenger.transport.doctrine.pg_notify_on_idle_listener ' , PostgreSqlNotifyOnIdleListener::class)
66+ ->args ([
67+ service ('logger ' ),
68+ ])
69+ ->tag ('kernel.event_subscriber ' );
6270};
Original file line number Diff line number Diff line change 6262use Symfony \Component \DependencyInjection \Reference ;
6363use Symfony \Component \ExpressionLanguage \ExpressionLanguage ;
6464use Symfony \Component \Form \AbstractType ;
65+ use Symfony \Component \Messenger \Bridge \Doctrine \EventListener \PostgreSqlNotifyOnIdleListener ;
6566use Symfony \Component \Messenger \Bridge \Doctrine \Transport \DoctrineTransportFactory ;
6667use Symfony \Component \Messenger \MessageBusInterface ;
6768use Symfony \Component \PropertyInfo \PropertyInfoExtractorInterface ;
@@ -1432,6 +1433,10 @@ private function loadMessengerServices(ContainerBuilder $container): void
14321433 $ loader = new PhpFileLoader ($ container , new FileLocator (__DIR__ . '/../../config ' ));
14331434 $ loader ->load ('messenger.php ' );
14341435
1436+ if (! class_exists (PostgreSqlNotifyOnIdleListener::class)) {
1437+ $ container ->removeDefinition ('messenger.transport.doctrine.pg_notify_on_idle_listener ' );
1438+ }
1439+
14351440 /**
14361441 * The Doctrine transport component (symfony/doctrine-messenger) is optional.
14371442 * Remove service definition, if it is not available
Original file line number Diff line number Diff line change @@ -809,8 +809,9 @@ public function testMessengerIntegrationWithDoctrineTransport(): void
809809
810810 $ messengerTransportDoctrineFactory = $ container ->getDefinition ('messenger.transport.doctrine.factory ' );
811811
812- $ this ->assertCount (1 , $ messengerTransportDoctrineFactory ->getArguments ());
812+ $ this ->assertCount (2 , $ messengerTransportDoctrineFactory ->getArguments ());
813813 $ this ->assertSame ('doctrine ' , (string ) $ messengerTransportDoctrineFactory ->getArgument (0 ));
814+ $ this ->assertSame ('messenger.transport.doctrine.pg_notify_on_idle_listener ' , (string ) $ messengerTransportDoctrineFactory ->getArgument (1 ));
814815
815816 $ this ->assertSame (DoctrineTransportFactory::class, $ messengerTransportDoctrineFactory ->getClass ());
816817
You can’t perform that action at this time.
0 commit comments