for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace MediaMonks\CrawlerBundle\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
{
/**
* Generates the configuration tree.
*
* @return TreeBuilder
*/
public function getConfigTreeBuilder()
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('mediamonks_crawler');
$this->addClient($rootNode);
$this->addConfig($rootNode);
$this->addPrerender($rootNode);
$this->addPrerenderIo($rootNode);
return $treeBuilder;
}
* @param ArrayNodeDefinition $node
private function addClient(ArrayNodeDefinition $node)
$node->children()
->scalarNode('client')
->defaultValue('goutte')
->end();
private function addConfig(ArrayNodeDefinition $node)
->scalarNode('limit')
->defaultValue(0)
->end()
->booleanNode('stop_on_error')
->defaultFalse()
->booleanNode('exception_on_error')
private function addPrerender(ArrayNodeDefinition $node)
->arrayNode('prerender')
->addDefaultsIfNotSet()
->children()
->scalarNode('url')
->defaultNull()
private function addPrerenderIo(ArrayNodeDefinition $node)
->arrayNode('prerender_io')
->scalarNode('token')