src/DependencyInjection/Configuration.php
<?php
declare(strict_types=1);
/*
* (c) Christian Gripp <mail@core23.de>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Core23\PiwikBundle\DependencyInjection;
use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition;
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
use Symfony\Component\Config\Definition\ConfigurationInterface;
final class Configuration implements ConfigurationInterface
{
/**
* {@inheritdoc}
*/
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
/** @var ArrayNodeDefinition $node */
$node = $treeBuilder->root('core23_piwik');
$this->addHttpClientSection($node);
return $treeBuilder;
}
/**
* @param ArrayNodeDefinition $node
*/
private function addHttpClientSection(ArrayNodeDefinition $node): void
{
$node
->children()
->arrayNode('http')
->addDefaultsIfNotSet()
->children()
->scalarNode('client')->defaultValue('httplug.client.default')->end()
->scalarNode('message_factory')->defaultValue('httplug.message_factory.default')->end()
->end()
->end()
->end()
;
}
}