for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/*
* This file is part of the Silverback API Components Bundle Project
*
* (c) Daniel West <[email protected]>
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
declare(strict_types=1);
namespace Silverback\ApiComponentsBundle\DependencyInjection\CompilerPass;
use Silverback\ApiComponentsBundle\Serializer\MappingLoader\ComponentLoader;
use Silverback\ApiComponentsBundle\Serializer\MappingLoader\PublishableLoader;
use Silverback\ApiComponentsBundle\Serializer\MappingLoader\TimestampedLoader;
use Silverback\ApiComponentsBundle\Serializer\MappingLoader\UploadableLoader;
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Reference;
/**
* @author Vincent Chalamon <[email protected]>
class SerializerCompilerPass implements CompilerPassInterface
{
public function process(ContainerBuilder $container)
$definition = $container->getDefinition('serializer.mapping.chain_loader');
$definition->replaceArgument(
0,
array_merge(
$definition->getArgument(0),
[
new Reference(PublishableLoader::class),
new Reference(TimestampedLoader::class),
new Reference(ComponentLoader::class),
new Reference(UploadableLoader::class),
]
)
);
}