Lemon\RestBundle\LemonRestBundle::build PHP Method

build() public method

public build ( ContainerBuilder $container )
$container Symfony\Component\DependencyInjection\ContainerBuilder
    public function build(ContainerBuilder $container)
    {
        parent::build($container);
        if (Kernel::MAJOR_VERSION == 2 && Kernel::MINOR_VERSION <= 5) {
            $container->addCompilerPass(new \Symfony\Component\HttpKernel\DependencyInjection\RegisterListenersPass('lemon_rest.event_dispatcher', 'lemon_rest.event_listener', 'lemon_rest.event_subscriber'));
        } else {
            $container->addCompilerPass(new \Symfony\Component\EventDispatcher\DependencyInjection\RegisterListenersPass('lemon_rest.event_dispatcher', 'lemon_rest.event_listener', 'lemon_rest.event_subscriber'));
        }
        $container->addCompilerPass(new DoctrineRegistryServicePass());
        $container->addCompilerPass(new RegisterFormatPass());
        $container->addCompilerPass(new RegisterResourcePass());
        $container->addCompilerPass(new RegisterMappingsPass());
        // This is basically copy-pasted from JMSSerializerBundle
        $container->addCompilerPass($this->getServiceMapPass('jms_serializer.serialization_visitor', 'format', function (ContainerBuilder $container, Definition $def) {
            $container->getDefinition('lemon_rest.serializer.constructor_factory')->replaceArgument(2, $def);
        }));
        $container->addCompilerPass($this->getServiceMapPass('jms_serializer.deserialization_visitor', 'format', function (ContainerBuilder $container, Definition $def) {
            $container->getDefinition('lemon_rest.serializer.constructor_factory')->replaceArgument(3, $def);
        }));
    }