for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* @package narrator-bundle
*/
namespace Mleko\Narrator\Bundle\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();
$rootNode = $treeBuilder->root('narrator');
$rootNode
->children()
->arrayNode('event_bus')
->defaultValue(['default' => ['resolver' => ['type' => 'name', "name_extractor" => "narrator.name_extractor.class_name"]]])
->requiresAtLeastOneElement()
->useAttributeAsKey('name')
->prototype("array")
->arrayNode('resolver')
->enumNode('type')
->values(['name', 'instanceof', 'service'])
->isRequired()
->end()
->scalarNode('name_extractor')
->defaultValue("narrator.name_extractor.class_name")
->scalarNode('service_id')
->end();
return $treeBuilder;
}