Mmoreram\RSQueueBundle\DependencyInjection\RSQueueExtension::load PHP Метод

load() публичный Метод

{@inheritDoc}
public load ( array $configs, ContainerBuilder $container )
$configs array
$container Symfony\Component\DependencyInjection\ContainerBuilder
    public function load(array $configs, ContainerBuilder $container)
    {
        $configuration = new Configuration();
        $config = $this->processConfiguration($configuration, $configs);
        $container->setParameter('rs_queue.queues', $config['queues']);
        $container->setParameter('rs_queue.serializer.class', $config['serializer']);
        $container->setParameter('rs_queue.server.redis', $config['server']['redis']);
        $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
        $loader->load('services.yml');
        // BC sf < 2.6
        $definition = $container->getDefinition('rs_queue.serializer');
        if (method_exists($definition, 'setFactory')) {
            $definition->setFactory(array(new Reference('rs_queue.serializer.factory'), 'get'));
        } else {
            $definition->setFactoryService('rs_queue.serializer.factory');
            $definition->setFactoryMethod('get');
        }
        // BC sf < 2.6
        $definition = $container->getDefinition('rs_queue.redis');
        if (method_exists($definition, 'setFactory')) {
            $definition->setFactory(array(new Reference('rs_queue.redis.factory'), 'get'));
        } else {
            $definition->setFactoryService('rs_queue.redis.factory');
            $definition->setFactoryMethod('get');
        }
    }

Usage Example

 public function testExtension()
 {
     $config = array();
     $this->extension->load($config, $this->container);
 }
RSQueueExtension