Skip to content

Commit e10ff5c

Browse files
committed
[FrameworkBundle][Serializer] Add option to register a "circular_reference_handler"
1 parent 0b5e9f0 commit e10ff5c

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

DependencyInjection/Configuration.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -686,6 +686,7 @@ private function addSerializerSection(ArrayNodeDefinition $rootNode)
686686
->booleanNode('enable_annotations')->{!class_exists(FullStack::class) && class_exists(Annotation::class) ? 'defaultTrue' : 'defaultFalse'}()->end()
687687
->scalarNode('cache')->end()
688688
->scalarNode('name_converter')->end()
689+
->scalarNode('circular_reference_handler')->end()
689690
->end()
690691
->end()
691692
->end()

DependencyInjection/FrameworkExtension.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1281,6 +1281,10 @@ private function registerSerializerConfiguration(array $config, ContainerBuilder
12811281
if (isset($config['name_converter']) && $config['name_converter']) {
12821282
$container->getDefinition('serializer.normalizer.object')->replaceArgument(1, new Reference($config['name_converter']));
12831283
}
1284+
1285+
if (isset($config['circular_reference_handler']) && $config['circular_reference_handler']) {
1286+
$container->getDefinition('serializer.normalizer.object')->addMethodCall('setCircularReferenceHandler', array(new Reference($config['circular_reference_handler'])));
1287+
}
12841288
}
12851289

12861290
/**

0 commit comments

Comments
 (0)