* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Sonata\AdminBundle\DependencyInjection; use Symfony\Component\Config\Definition\Builder; use Symfony\Component\Config\Definition\Builder\NodeBuilder; use Symfony\Component\Config\Definition\Builder\TreeBuilder; /** * This class contains the configuration information for the bundle * * This information is solely responsible for how the different configuration * sections are normalized, and merged. * * @author Michael Williams */ class Configuration { /** * Generates the configuration tree. * * @return \Symfony\Component\Config\Definition\NodeInterface */ public function getConfigTree($kernelDebug) { $treeBuilder = new TreeBuilder(); $rootNode = $treeBuilder->root('sonata_admin', 'array'); $rootNode ->children() ->arrayNode('templates') ->children() ->scalarNode('layout')->cannotBeEmpty()->end() ->scalarNode('ajax')->cannotBeEmpty()->end() ->end() ->end() ->end() ->end(); return $treeBuilder->buildTree(); } }