<?php
namespace WAM\Bundle\MediaBundle;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\HttpKernel\Bundle\Bundle;
use WAM\Bundle\CoreBundle\DependencyInjection\Compiler\InjectTaggedServicesPass;
use WAM\Bundle\MediaBundle\DependencyInjection\Compiler\RegisterConvertersPass;
use WAM\Bundle\MediaBundle\DependencyInjection\Compiler\RegisterExternalMediaProvidersPass;
use WAM\Bundle\MediaBundle\DependencyInjection\Compiler\RegisterFiltersPass;
use WAM\Bundle\MediaBundle\DependencyInjection\Compiler\RegisterHandlersPass;
use WAM\Bundle\MediaBundle\DependencyInjection\Compiler\RegisterMediaFormResolverPass;
use WAM\Component\Media\Processor\Interfaces\FileProcessorInterface;
use WAM\Component\Media\Processor\OptimizationHandler;
use WAM\Component\Media\Resolver\Interfaces\ConverterResolverInterface;
/**
* @author Edgar Tebar <etebar@wearemarketing.com>
*/
class WAMMediaBundle extends Bundle
{
/**
* {@inheritdoc}
*/
public function build(ContainerBuilder $container)
{
parent::build($container);
$container->addCompilerPass(new InjectTaggedServicesPass(
ConverterResolverInterface::class,
'wam_media.converter',
'addConverter'
));
$container->addCompilerPass(new RegisterFiltersPass());
$container->addCompilerPass(new InjectTaggedServicesPass(
FileProcessorInterface::class,
'wam_media.handler',
'addHandler'
));
$container->addCompilerPass(new InjectTaggedServicesPass(
OptimizationHandler::class,
'wam_media.optimizer',
'addOptimizer'
));
$container->addCompilerPass(new RegisterExternalMediaProvidersPass());
}
}