for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Pyrowman\PheanstalkBundle\DependencyInjection;
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
use Symfony\Component\Config\Definition\ConfigurationInterface;
/**
* This is the class that validates and merges configuration from your app/config files.
*
* To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}
*/
class Configuration implements ConfigurationInterface
{
* {@inheritDoc}
public function getConfigTreeBuilder()
$treeBuilder = new TreeBuilder('pheanstalk');
$rootNode = $treeBuilder->getRootNode()->children();
$rootNode
->arrayNode('profiler')
->addDefaultsIfNotSet()
->children()
->scalarNode('enabled')->defaultValue('%kernel.debug%')->end()
->scalarNode('template')->defaultValue('@Pheanstalk/Profiler/pheanstalk.html.twig')->end()
->end()
->arrayNode('pheanstalks')
->requiresAtLeastOneElement()
->useAttributeAsKey('name')
->prototype('array')
->scalarNode('server')
->isRequired()
->cannotBeEmpty()
->scalarNode('port')
->defaultValue('5000')
->scalarNode('user')
->scalarNode('password')
->scalarNode('timeout')
->defaultValue('60')
->booleanNode('default')
->defaultFalse()
->scalarNode('proxy')
->defaultValue('pheanstalk.proxy.default')
->end();
return $treeBuilder;
}