function SerializerPass::configureSerializer
2 calls to SerializerPass::configureSerializer()
- SerializerPass::configureNamedSerializers in vendor/
symfony/ serializer/ DependencyInjection/ SerializerPass.php - SerializerPass::process in vendor/
symfony/ serializer/ DependencyInjection/ SerializerPass.php - You can modify the container here before it is dumped to PHP code.
File
-
vendor/
symfony/ serializer/ DependencyInjection/ SerializerPass.php, line 108
Class
- SerializerPass
- Adds all services with the tags "serializer.encoder" and "serializer.normalizer" as encoders and normalizers to the "serializer" service.
Namespace
Symfony\Component\Serializer\DependencyInjectionCode
private function configureSerializer(ContainerBuilder $container, string $id, array $normalizers, array $encoders, string $serializerName) : void {
if ($container->getParameter('kernel.debug') && $container->hasDefinition('serializer.data_collector')) {
foreach ($normalizers as $i => $normalizer) {
$normalizers[$i] = $container->register('.debug.serializer.normalizer.' . $normalizer, TraceableNormalizer::class)
->setArguments([
$normalizer,
new Reference('serializer.data_collector'),
$serializerName,
]);
}
foreach ($encoders as $i => $encoder) {
$encoders[$i] = $container->register('.debug.serializer.encoder.' . $encoder, TraceableEncoder::class)
->setArguments([
$encoder,
new Reference('serializer.data_collector'),
$serializerName,
]);
}
}
$serializerDefinition = $container->getDefinition($id);
$serializerDefinition->replaceArgument(0, $normalizers);
$serializerDefinition->replaceArgument(1, $encoders);
}