Source of file FilterManagerPass.php
Size: 1,249 Bytes - Last Modified: 2013-05-16T07:32:23+02:00
/home/theseer/Downloads/Symfony/vendor/symfony/assetic-bundle/Symfony/Bundle/AsseticBundle/DependencyInjection/Compiler/FilterManagerPass.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445 | <?php /* * This file is part of the Symfony framework. * * (c) Fabien Potencier <fabien@symfony.com> * * This source file is subject to the MIT license that is bundled * with this source code in the file LICENSE. */ namespace Symfony\Bundle\AsseticBundle\DependencyInjection\Compiler; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Reference; /** * Adds services tagged as filters to the filter manager. * * @author Kris Wallsmith <kris@symfony.com> */ class FilterManagerPass implements CompilerPassInterface { public function process(ContainerBuilder $container) { if (!$container->hasDefinition('assetic.filter_manager')) { return; } $mapping = array(); foreach ($container->findTaggedServiceIds('assetic.filter') as $id => $attributes) { foreach ($attributes as $attr) { if (isset($attr['alias'])) { $mapping[$attr['alias']] = $id; } } } $container ->getDefinition('assetic.filter_manager') ->replaceArgument(1, $mapping); } } |