@@ -2335,7 +2335,10 @@ a message is received via the worker (for messages that were sent to a transport
2335
2335
to be handled asynchronously). Keep this in mind if you create your own middleware.
2336
2336
2337
2337
You can add your own middleware to this list, or completely disable the default
2338
- middleware and *only * include your own:
2338
+ middleware and *only * include your own.
2339
+
2340
+ If a middleware service is abstract, you can configure its constructor's arguments.
2341
+ A different instance will be created per bus.
2339
2342
2340
2343
.. configuration-block ::
2341
2344
@@ -2349,9 +2352,11 @@ middleware and *only* include your own:
2349
2352
# disable the default middleware
2350
2353
default_middleware : false
2351
2354
2352
- # and/or add your own
2353
2355
middleware :
2354
- # service ids that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface
2356
+ # use and configure parts of the default middleware you want
2357
+ - ' add_bus_name_stamp_middleware ' : ['messenger.bus.default']
2358
+
2359
+ # add your own services that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface
2355
2360
- ' App\Middleware\MyMiddleware'
2356
2361
- ' App\Middleware\AnotherMiddleware'
2357
2362
@@ -2371,11 +2376,17 @@ middleware and *only* include your own:
2371
2376
<framework : config >
2372
2377
<framework : messenger >
2373
2378
<!-- default-middleware: disable the default middleware -->
2374
- <framework : bus name =" messenger.bus.default" default-middleware =" false" / >
2379
+ <framework : bus name =" messenger.bus.default" default-middleware =" false" >
2375
2380
2376
- <!-- and/or add your own -->
2377
- <framework : middleware id =" App\Middleware\MyMiddleware" />
2378
- <framework : middleware id =" App\Middleware\AnotherMiddleware" />
2381
+ <!-- use and configure parts of the default middleware you want -->
2382
+ <framework : middleware id =" add_bus_name_stamp_middleware" >
2383
+ <framework : argument >messenger.bus.default</framework : argument >
2384
+ </framework : middleware >
2385
+
2386
+ <!-- add your own services that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface -->
2387
+ <framework : middleware id =" App\Middleware\MyMiddleware" />
2388
+ <framework : middleware id =" App\Middleware\AnotherMiddleware" />
2389
+ </framework : bus >
2379
2390
</framework : messenger >
2380
2391
</framework : config >
2381
2392
</container >
@@ -2389,16 +2400,16 @@ middleware and *only* include your own:
2389
2400
$messenger = $framework->messenger();
2390
2401
2391
2402
$bus = $messenger->bus('messenger.bus.default')
2392
- ->defaultMiddleware(false);
2403
+ ->defaultMiddleware(false); // disable the default middleware
2404
+
2405
+ // use and configure parts of the default middleware you want
2406
+ $bus->middleware()->id('add_bus_name_stamp_middleware')->arguments(['messenger.bus.default']);
2407
+
2408
+ // add your own services that implement Symfony\Component\Messenger\Middleware\MiddlewareInterface
2393
2409
$bus->middleware()->id('App\Middleware\MyMiddleware');
2394
2410
$bus->middleware()->id('App\Middleware\AnotherMiddleware');
2395
2411
};
2396
2412
2397
- .. note ::
2398
-
2399
- If a middleware service is abstract, a different instance of the service will
2400
- be created per bus.
2401
-
2402
2413
.. _middleware-doctrine :
2403
2414
2404
2415
Middleware for Doctrine
0 commit comments