@@ -47,14 +47,23 @@ public function process(ContainerBuilder $container): void
47
47
48
48
if ($ container ->hasParameter ('serializer.default_context ' )) {
49
49
$ defaultContext = $ container ->getParameter ('serializer.default_context ' );
50
- foreach (array_merge ($ normalizers , $ encoders ) as $ service ) {
51
- $ definition = $ container ->getDefinition ($ service );
52
- $ definition ->setBindings (['array $defaultContext ' => new BoundArgument ($ defaultContext , false )] + $ definition ->getBindings ());
53
- }
54
-
50
+ $ this ->bindDefaultContext ($ container , array_merge ($ normalizers , $ encoders ), $ defaultContext );
55
51
$ container ->getParameterBag ()->remove ('serializer.default_context ' );
56
52
}
57
53
54
+ $ this ->configureSerializer ($ container , 'serializer ' , $ normalizers , $ encoders );
55
+ }
56
+
57
+ private function bindDefaultContext (ContainerBuilder $ container , array $ services , array $ defaultContext ): void
58
+ {
59
+ foreach ($ services as $ id ) {
60
+ $ definition = $ container ->getDefinition ((string ) $ id );
61
+ $ definition ->setBindings (['array $defaultContext ' => new BoundArgument ($ defaultContext , false )] + $ definition ->getBindings ());
62
+ }
63
+ }
64
+
65
+ private function configureSerializer (ContainerBuilder $ container , string $ id , array $ normalizers , array $ encoders ): void
66
+ {
58
67
if ($ container ->getParameter ('kernel.debug ' ) && $ container ->hasDefinition ('serializer.data_collector ' )) {
59
68
foreach ($ normalizers as $ i => $ normalizer ) {
60
69
$ normalizers [$ i ] = $ container ->register ('.debug.serializer.normalizer. ' .$ normalizer , TraceableNormalizer::class)
@@ -67,7 +76,7 @@ public function process(ContainerBuilder $container): void
67
76
}
68
77
}
69
78
70
- $ serializerDefinition = $ container ->getDefinition (' serializer ' );
79
+ $ serializerDefinition = $ container ->getDefinition ($ id );
71
80
$ serializerDefinition ->replaceArgument (0 , $ normalizers );
72
81
$ serializerDefinition ->replaceArgument (1 , $ encoders );
73
82
}
0 commit comments