NelmioApiDocBundle/DependencyInjection/AnnotationsProviderCompilerPass.php

38 lines
1.1 KiB
PHP
Raw Normal View History

2015-03-15 23:48:57 +01:00
<?php
/*
* This file is part of the NelmioApiDocBundle.
*
* (c) Nelmio <hello@nelm.io>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Nelmio\ApiDocBundle\DependencyInjection;
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Reference;
/**
* AnnotationsProvider compiler pass.
*
* @author Kévin Dunglas <dunglas@gmail.com>
*/
class AnnotationsProviderCompilerPass implements CompilerPassInterface
{
2024-10-01 15:54:04 +03:00
public function process(ContainerBuilder $container): void
2015-03-15 23:48:57 +01:00
{
2024-10-01 15:54:04 +03:00
$annotationsProviders = [];
2015-03-15 23:48:57 +01:00
foreach ($container->findTaggedServiceIds('nelmio_api_doc.extractor.annotations_provider') as $id => $attributes) {
$annotationsProviders[] = new Reference($id);
}
$container
->getDefinition('nelmio_api_doc.extractor.api_doc_extractor')
->replaceArgument(4, $annotationsProviders)
2015-03-15 23:48:57 +01:00
;
}
}