public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('eko_feed');
$rootNode->children()->scalarNode('hydrator')->defaultValue('eko_feed.hydrator.default')->end()->scalarNode('translation_domain')->defaultNull()->end()->arrayNode('feeds')->requiresAtLeastOneElement()->useAttributeAsKey('name')->prototype('array')->children()->scalarNode('title')->isRequired()->end()->scalarNode('description')->isRequired()->end()->arrayNode('link')->isRequired()->beforeNormalization()->ifString()->then(function ($value) {
return ['uri' => $value];
})->end()->children()->scalarNode('route_name')->end()->arrayNode('route_params')->useAttributeAsKey('key')->prototype('scalar')->end()->end()->scalarNode('uri')->end()->end()->end()->scalarNode('encoding')->isRequired()->end()->scalarNode('author')->end()->end()->end()->end()->end();
return $treeBuilder;
}