Skip to content

Commit f05a2b3

Browse files
committed
Merge branch '5.4' into 6.3
* 5.4: Update messenger.rst [Messenger] Mention passing arguments to abstract definition
2 parents 1be4874 + 428e2e4 commit f05a2b3

File tree

1 file changed

+24
-13
lines changed

1 file changed

+24
-13
lines changed

messenger.rst

Lines changed: 24 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2298,7 +2298,10 @@ a message is received via the worker (for messages that were sent to a transport
22982298
to be handled asynchronously). Keep this in mind if you create your own middleware.
22992299

23002300
You can add your own middleware to this list, or completely disable the default
2301-
middleware and *only* include your own:
2301+
middleware and *only* include your own.
2302+
2303+
If a middleware service is abstract, you can configure its constructor's arguments
2304+
and a different instance will be created per bus.
23022305

23032306
.. configuration-block::
23042307

@@ -2312,9 +2315,11 @@ middleware and *only* include your own:
23122315
# disable the default middleware
23132316
default_middleware: false
23142317
2315-
# and/or add your own
23162318
middleware:
2317-
# service ids that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface
2319+
# use and configure parts of the default middleware you want
2320+
- 'add_bus_name_stamp_middleware': ['messenger.bus.default']
2321+
2322+
# add your own services that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface
23182323
- 'App\Middleware\MyMiddleware'
23192324
- 'App\Middleware\AnotherMiddleware'
23202325
@@ -2334,11 +2339,17 @@ middleware and *only* include your own:
23342339
<framework:config>
23352340
<framework:messenger>
23362341
<!-- default-middleware: disable the default middleware -->
2337-
<framework:bus name="messenger.bus.default" default-middleware="false"/>
2342+
<framework:bus name="messenger.bus.default" default-middleware="false">
23382343
2339-
<!-- and/or add your own -->
2340-
<framework:middleware id="App\Middleware\MyMiddleware"/>
2341-
<framework:middleware id="App\Middleware\AnotherMiddleware"/>
2344+
<!-- use and configure parts of the default middleware you want -->
2345+
<framework:middleware id="add_bus_name_stamp_middleware">
2346+
<framework:argument>messenger.bus.default</framework:argument>
2347+
</framework:middleware>
2348+
2349+
<!-- add your own services that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface -->
2350+
<framework:middleware id="App\Middleware\MyMiddleware"/>
2351+
<framework:middleware id="App\Middleware\AnotherMiddleware"/>
2352+
</framework:bus>
23422353
</framework:messenger>
23432354
</framework:config>
23442355
</container>
@@ -2352,16 +2363,16 @@ middleware and *only* include your own:
23522363
$messenger = $framework->messenger();
23532364
23542365
$bus = $messenger->bus('messenger.bus.default')
2355-
->defaultMiddleware(false);
2366+
->defaultMiddleware(false); // disable the default middleware
2367+
2368+
// use and configure parts of the default middleware you want
2369+
$bus->middleware()->id('add_bus_name_stamp_middleware')->arguments(['messenger.bus.default']);
2370+
2371+
// add your own services that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface
23562372
$bus->middleware()->id('App\Middleware\MyMiddleware');
23572373
$bus->middleware()->id('App\Middleware\AnotherMiddleware');
23582374
};
23592375
2360-
.. note::
2361-
2362-
If a middleware service is abstract, a different instance of the service will
2363-
be created per bus.
2364-
23652376
.. _middleware-doctrine:
23662377

23672378
Middleware for Doctrine

0 commit comments

Comments
 (0)