for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/*
* The MIT License (MIT)
*
* Copyright (c) 2014-2016 Spomky-Labs
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file for details.
*/
namespace SpomkyLabs\RoleHierarchyBundle\DependencyInjection;
use Symfony\Component\Config\Definition\Processor;
use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
final class SpomkyLabsRoleHierarchyExtension extends Extension
{
/**
* @var string
private $alias;
* @param string $alias
public function __construct($alias)
$this->alias = $alias;
}
* {@inheritdoc}
public function getAlias()
return $this->alias;
public function load(array $configs, ContainerBuilder $container)
$processor = new Processor();
$configuration = new Configuration();
$config = $processor->processConfiguration($configuration, $configs);
$loader = new XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
$loader->load('services.xml');
$container->setAlias($this->getAlias().'.role_manager', $config['role_manager']);
$container->setParameter($this->getAlias().'.role_class', $config['role_class']);