@@ -2298,7 +2298,10 @@ a message is received via the worker (for messages that were sent to a transport
2298
2298
to be handled asynchronously). Keep this in mind if you create your own middleware.
2299
2299
2300
2300
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.
2302
2305
2303
2306
.. configuration-block ::
2304
2307
@@ -2312,9 +2315,11 @@ middleware and *only* include your own:
2312
2315
# disable the default middleware
2313
2316
default_middleware : false
2314
2317
2315
- # and/or add your own
2316
2318
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
2318
2323
- ' App\Middleware\MyMiddleware'
2319
2324
- ' App\Middleware\AnotherMiddleware'
2320
2325
@@ -2334,11 +2339,17 @@ middleware and *only* include your own:
2334
2339
<framework : config >
2335
2340
<framework : messenger >
2336
2341
<!-- 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" >
2338
2343
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 >
2342
2353
</framework : messenger >
2343
2354
</framework : config >
2344
2355
</container >
@@ -2352,16 +2363,16 @@ middleware and *only* include your own:
2352
2363
$messenger = $framework->messenger();
2353
2364
2354
2365
$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
2356
2372
$bus->middleware()->id('App\Middleware\MyMiddleware');
2357
2373
$bus->middleware()->id('App\Middleware\AnotherMiddleware');
2358
2374
};
2359
2375
2360
- .. note ::
2361
-
2362
- If a middleware service is abstract, a different instance of the service will
2363
- be created per bus.
2364
-
2365
2376
.. _middleware-doctrine :
2366
2377
2367
2378
Middleware for Doctrine
0 commit comments