[FrameworkBundle][Serializer] Move DateIntervalNormalizer definition to xml

This commit is contained in:
Maxime Steinhausser 2017-10-20 09:39:07 +02:00
parent c3617bd0b9
commit 11244d51ee
2 changed files with 9 additions and 7 deletions

View File

@ -1540,13 +1540,6 @@ class FrameworkExtension extends Extension
$definition->addTag('serializer.normalizer', array('priority' => -920));
}
if (class_exists(DateIntervalNormalizer::class)) {
// Run before serializer.normalizer.object
$definition = $container->register('serializer.normalizer.dateinterval', DateIntervalNormalizer::class);
$definition->setPublic(false);
$definition->addTag('serializer.normalizer', array('priority' => -915));
}
if (class_exists('Symfony\Component\Serializer\Normalizer\DateTimeNormalizer')) {
// Run before serializer.normalizer.object
$definition = $container->register('serializer.normalizer.datetime', DateTimeNormalizer::class);
@ -1575,6 +1568,10 @@ class FrameworkExtension extends Extension
$loader->load('serializer.xml');
if (!class_exists(DateIntervalNormalizer::class)) {
$container->removeDefinition('serializer.normalizer.dateinterval');
}
$container->getDefinition('serializer.mapping.cache.symfony')->setPrivate(true);
$chainLoader = $container->getDefinition('serializer.mapping.chain_loader');

View File

@ -25,6 +25,11 @@
<service id="serializer.property_accessor" alias="property_accessor" />
<!-- Normalizer -->
<service id="serializer.normalizer.dateinterval" class="Symfony\Component\Serializer\Normalizer\DateIntervalNormalizer">
<!-- Run before serializer.normalizer.object -->
<tag name="serializer.normalizer" priority="-915" />
</service>
<service id="serializer.normalizer.object" class="Symfony\Component\Serializer\Normalizer\ObjectNormalizer">
<argument type="service" id="serializer.mapping.class_metadata_factory" />
<argument>null</argument> <!-- name converter -->