Provides configuration mapping

@return TreeBuilder
977818
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('gauges');
        $rootNode
            ->useAttributeAsKey('path')
            ->prototype('array')
            ->children()
                ->scalarNode('class')
                    ->isRequired()
                    ->cannotBeEmpty()
                ->end()
                ->variableNode('arguments')->end()
            ->end();

        return $treeBuilder;
    }
1270491
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('mediamonks_rest_api');

        $this->addDebugNode($rootNode);
        $this->addRequestMatcherNode($rootNode);
        $this->addSerializer($rootNode);
        $this->addPostMessageOriginNode($rootNode);
        $this->addResponseModel($rootNode);

        return $treeBuilder;
    }
462644
public function getConfigTreeBuilder()
    {
        $builder  = new TreeBuilder();
        $security = $builder->root('security');
        {
            /** @var ArrayNodeDefinition $policies */
            $policies = $security->children()->arrayNode('policies');
            {
                $policies->prototype('variable');
            }
            /** @var ArrayNodeDefinition $firewalls */
            $firewalls = $security->children()->arrayNode('firewalls');
            {
                $firewalls->prototype('variable');
            }
            /** @var ArrayNodeDefinition $accessRules */
            $accessRules = $security->children()->arrayNode('access_rules');
            {
                $accessRules->prototype('variable');
            }
            $roleHierarchy = $security->children()->arrayNode('role_hierarchy');
            {
                $roleHierarchy->prototype('variable')->beforeNormalization()->ifString()->then(
                    function ($v) {
                        return [$v];
                    }
                );
            }
        }

        return $builder;
    }
1130503
public function getConfigTreeBuilder(): TreeBuilder
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('bkstg_core');

        $rootNode
            ->children()
                ->arrayNode('cdn')
                    ->children()
                        ->scalarNode('bucket')->isRequired()->end()
                        ->scalarNode('client')->defaultValue('bkstg.core.adapter.service.do_spaces')->end()
                    ->end()
                ->end()
                ->arrayNode('filesystem')
                    ->children()
                        ->scalarNode('directory')->defaultValue('')->end()
                        ->scalarNode('bucket')->isRequired()->end()
                        ->scalarNode('accessKey')->isRequired()->end()
                        ->scalarNode('secretKey')->isRequired()->end()
                        ->scalarNode('region')->isRequired()->end()
                        ->scalarNode('endpoint')->defaultNull()->end()
                        ->scalarNode('create')->defaultValue(false)->end()
                        ->scalarNode('storage')
                            ->defaultValue('standard')
                            ->validate()
                            ->ifNotInArray(['standard', 'reduced'])
                                ->thenInvalid('Invalid storage type - "%s"')
                            ->end()
                        ->end()
                        ->scalarNode('cache_control')->defaultValue('')->end()
                        ->scalarNode('acl')
                            ->defaultValue('public')
                            ->validate()
                            ->ifNotInArray([
                                'private',
                                'public',
                                'open',
                                'auth_read',
                                'owner_read',
                                'owner_full_control',
                            ])
                                ->thenInvalid('Invalid acl permission - "%s"')
                            ->end()
                        ->end()
                        ->scalarNode('encryption')
                            ->defaultValue('')
                            ->validate()
                            ->ifNotInArray(['aes256'])
                                ->thenInvalid('Invalid encryption type - "%s"')
                            ->end()
                        ->end()
                        ->scalarNode('version')->defaultValue('latest')->end()
                        ->enumNode('sdk_version')
                            ->values([2, 3])
                            ->defaultValue(3)
                        ->end()
                        ->arrayNode('meta')
                            ->useAttributeAsKey('name')
                            ->prototype('scalar')
                            ->end()
                        ->end()
                    ->end()
                ->end()
            ->end()
        ;

        return $treeBuilder;
    }
596951
public function getConfigTreeBuilder(): TreeBuilder
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('dms_filter');

        $rootNode->children()->booleanNode('auto_filter_forms')->defaultValue(true);

        // Here you should define the parameters that are allowed to
        // configure your bundle. See the documentation linked above for
        // more information on that topic.

        return $treeBuilder;
    }
127741
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $treeBuilder->root('majora_oauth_server')
            ->children()
                ->scalarNode('secret')
                    ->isRequired()
                    ->cannotBeEmpty()
                ->end()
                ->append($this->createTokenNode(
                    'access_token',
                    AccessToken::class,
                    AccessTokenInterface::class,
                    AccessTokenInterface::DEFAULT_TTL
                ))
                ->append($this->createTokenNode(
                    'refresh_token',
                    RefreshToken::class,
                    RefreshTokenInterface::class,
                    RefreshTokenInterface::DEFAULT_TTL
                ))
                ->arrayNode('application')
                    ->isRequired()
                    ->children()
                        ->append($this->createDriverStrategyNode('loader'))
                        ->append($this->createDriverStrategyNode('repository'))
                    ->end()
                ->end()
                ->arrayNode('account')
                    ->isRequired()
                    ->children()
                        ->append($this->createDriverStrategyNode('loader'))
                        ->append($this->createDriverStrategyNode('repository'))
                    ->end()
                ->end()
            ->end()
        ;

        return $treeBuilder;
    }
162665
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root($this->root);
        $rootNode
            ->children()
            ->booleanNode('enabled')->defaultTrue()->end()
            ->scalarNode('publication_event_class')->defaultValue('Sidus\PublishingBundle\Event\PublicationEvent')->end(
            )
            ->append($this->getQueueTreeBuilder())
            ->append($this->getPublishersTreeBuilder())
            ->end();

        return $treeBuilder;
    }
1216945
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root($this->getConfigTreeBuilderRoot());

        $rootNode->children()
            ->scalarNode("baseUrl")->defaultValue("https://primeadv.go2cloud.org/")->end()
            ->integerNode("id")->isRequired()->end()
            ->end();

        return $treeBuilder;
    }
408122
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('terrific_composer');

        $rootNode
            ->children()
                ->scalarNode('toolbar')->defaultFalse()->end()
                ->arrayNode('composition_bundles')
                    ->defaultValue(array('@TerrificComposition'))
                    ->beforeNormalization()
                        ->ifTrue(function($v){ return !is_array($v); })
                        ->then(function($v){ return array($v); })
                    ->end()
                    ->beforeNormalization()
                        ->always()
                        ->then(function($v) {
                            $bundles = array();

                            // trim and add @ if not existent
                            foreach ($v as $key => $bundle) {
                                $bundle = trim($bundle);

                                if(strpos($bundle, '@') === false) {
                                    $bundle = '@'.$bundle;
                                }
                                $bundles[$key] = $bundle;
                            }

                            return $bundles;
                        })
                    ->end()
                    ->prototype('scalar')->end()
                ->end()
                ->scalarNode('module_layout')
                    ->beforeNormalization()
                        ->always()
                        ->then(function($v) {
                            return str_replace('@', '', $v);
                        })
                    ->end()
                    ->defaultValue('TerrificComposition::base.html.twig')
                ->end()
                ->scalarNode('module_template')
                    ->beforeNormalization()
                        ->always()
                        ->then(function($v) {
                            return str_replace('@', '', $v);
                        })
                    ->end()
                    ->defaultValue(null)
                ->end()
            ->end()
        ;

        return $treeBuilder;
    }
399722
public function getConfigTreeBuilder()
    {
        $tree = new TreeBuilder();
        $rootNode = $tree->root('facile_crossbar_http_publisher');
        $this->addConnections($rootNode);

        return $tree;
    }
1370362
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('app');

        $rootNode
            ->addDefaultsIfNotSet()
            ->children()
                ->integerNode('session_lifetime')->defaultValue(7200)->end()
                ->arrayNode('api')
                    ->isRequired()
                    ->cannotBeEmpty()
                    ->children()
                        ->scalarNode('base_url')
                            ->isRequired()
                            ->cannotBeEmpty()
                        ->end()
                        ->scalarNode('api_key')
                            ->isRequired()
                            ->cannotBeEmpty()
                        ->end()
                        ->scalarNode('param_key')->defaultValue('api_key')->end()
                    ->end()
                ->end()
                ->arrayNode('http')
                    ->isRequired()
                    ->cannotBeEmpty()
                    ->children()
                        ->scalarNode('client')->defaultValue(null)->end()
                        ->arrayNode('get')
                            ->addDefaultsIfNotSet()
                            ->children()
                                ->scalarNode('accept')->defaultValue('application/ld+json')->end()
                                ->scalarNode('content_type')->defaultValue('application/ld+json')->end()
                            ->end()
                        ->end()
                        ->arrayNode('post')
                            ->addDefaultsIfNotSet()
                            ->children()
                                ->scalarNode('accept')->defaultValue('application/json')->end()
                                ->scalarNode('content_type')->defaultValue('application/json')->end()
                            ->end()
                        ->end()
                        ->arrayNode('put')
                            ->addDefaultsIfNotSet()
                            ->children()
                                ->scalarNode('accept')->defaultValue('application/json')->end()
                                ->scalarNode('content_type')->defaultValue('application/json')->end()
                            ->end()
                        ->end()
                        ->arrayNode('patch')
                            ->addDefaultsIfNotSet()
                            ->children()
                                ->scalarNode('accept')->defaultValue('application/json')->end()
                                ->scalarNode('content_type')->defaultValue('application/json')->end()
                            ->end()
                        ->end()
                        ->arrayNode('delete')
                            ->addDefaultsIfNotSet()
                            ->children()
                                ->scalarNode('accept')->defaultValue('application/json')->end()
                                ->scalarNode('content_type')->defaultValue('application/json')->end()
                            ->end()
                        ->end()
                    ->end()
                ->end()
                ->arrayNode('middlewares')
                    ->defaultValue([])
                    ->prototype('array')
                        ->children()
                            ->scalarNode('class')
                                ->isRequired()
                                ->cannotBeEmpty()
                            ->end()
                            ->variableNode('parameters')
                                ->defaultValue([])
                            ->end()
                            ->integerNode('priority')->defaultValue(0)->end()
                        ->end()
                    ->end()
                ->end()
                ->arrayNode('event_listeners')
                    ->defaultValue([])
                    ->prototype('array')
                        ->children()
                            ->scalarNode('event')
                                ->isRequired()
                                ->cannotBeEmpty()
                            ->end()
                            ->scalarNode('class')
                                ->isRequired()
                                ->cannotBeEmpty()
                            ->end()
                            ->scalarNode('method')
                                ->isRequired()
                                ->cannotBeEmpty()
                            ->end()
                            ->integerNode('priority')->defaultValue(0)->end()
                        ->end()
                    ->end()
                ->end()
                ->arrayNode('routes')
                    ->isRequired()
                    ->cannotBeEmpty()
                    ->prototype('array')
                        ->children()
                            ->scalarNode('path')
                                ->isRequired()
                                ->cannotBeEmpty()
                            ->end()
                            ->scalarNode('controller')
                                ->isRequired()
                                ->cannotBeEmpty()
                            ->end()
                            ->variableNode('requirements')
                                ->defaultValue([])
                            ->end()
                            ->variableNode('defaults')
                                ->defaultValue([])
                            ->end()
                            ->arrayNode('methods')
                                ->prototype('scalar')
                                    ->beforeNormalization()
                                        ->ifString()
                                        ->then(function ($v) { return strtoupper($v); })
                                    ->end()
                                    ->validate()
                                        ->ifNotInArray(['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS', 'HEAD'])
                                        ->thenInvalid('Invalid HTTP Verbs')
                                    ->end()
                                    ->defaultValue(['GET'])
                                ->end()
                            ->end()
                        ->end()
                    ->end()
                ->end()
                ->arrayNode('template')
                    ->isRequired()
                    ->cannotBeEmpty()
                    ->children()
                        ->scalarNode('engine')->defaultValue(null)->end()
                        ->scalarNode('path')->defaultValue(null)->end()
                        ->scalarNode('cache_dir')->defaultValue(null)->end()
                    ->end()
                ->end()
            ->end()
        ;

        return $treeBuilder;
    }
320649
public function getConfigTreeBuilder(): TreeBuilder
    {
        $treeBuilder = new TreeBuilder('bazinga_hateoas');
        if (\method_exists($treeBuilder, 'getRootNode')) {
            $rootNode = $treeBuilder->getRootNode();
        } else {
            // BC layer for symfony/config 4.1 and older
            $rootNode = $treeBuilder->root('bazinga_hateoas');
        }

        $rootNode
            ->children()
            ->arrayNode('metadata')
                ->addDefaultsIfNotSet()
                ->children()
                    ->scalarNode('cache')->defaultValue('file')->end()
                    ->arrayNode('file_cache')
                        ->addDefaultsIfNotSet()
                        ->children()
                            ->scalarNode('dir')->defaultValue('%kernel.cache_dir%/hateoas')->end()
                        ->end()
                    ->end()
                ->end()
            ->end()
            ->arrayNode('serializer')
                ->addDefaultsIfNotSet()
                ->children()
                    ->scalarNode('json')->defaultValue('hateoas.serializer.json_hal')->end()
                    ->scalarNode('xml')->defaultValue('hateoas.serializer.xml')->end()
                ->end()
            ->end()
            ->arrayNode('twig_extension')
                ->addDefaultsIfNotSet()
                ->canBeDisabled()
            ->end();

        return $treeBuilder;
    }
137079
public function getConfigTree()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('mandango', 'array');

        $rootNode
            ->children()
                ->scalarNode('model_dir')->end()
                ->booleanNode('logging')->end()
                ->scalarNode('default_connection')->end()
            ->end()

            ->fixXmlConfig('extra_config_classes_dir')
            ->children()
                ->arrayNode('extra_config_classes_dirs')
                ->prototype('scalar')->end()
            ->end()
        ;

        $this->addConnectionsSection($rootNode);

        return $treeBuilder->buildTree();
    }
38346
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('blablacar_redis');

        $rootNode
            ->children()
                ->arrayNode('clients')
                    ->isRequired()
                    ->requiresAtLeastOneElement()
                    ->useAttributeAsKey('name')
                    ->prototype('array')
                        ->children()
                            ->scalarNode('host')->defaultValue('127.0.0.1')->cannotBeEmpty()->end()
                            ->integerNode('port')->defaultValue(6379)->end()
                            ->integerNode('base')->end()
                        ->end()
                    ->end()
                ->end()
                ->arrayNode('session')
                    ->canBeUnset()
                    ->children()
                        ->scalarNode('client')->isRequired()->end()
                        ->scalarNode('prefix')->defaultValue('session')->cannotBeEmpty()->end()
                        ->integerNode('ttl')->end()
                        ->integerNode('spin_lock_wait')->defaultValue(150000)->end()
                        ->integerNode('lock_max_wait')->defaultValue(500000)->end()
                    ->end()
                ->end()
                ->booleanNode('enable_logger')->defaultTrue()->end()
            ->end()
        ;

        return $treeBuilder;
    }
31793
public function getConfigTreeBuilder()
    {
        $builder = new TreeBuilder();
        $cors    = $builder->root('cors');
        {
            $cors->children()->scalarNode('pattern')->isRequired();
            $cors->children()->variableNode('origins')->beforeNormalization()->ifString()->then(
                function ($v) {
                    return [$v];
                }
            );
            $cors->children()->variableNode('headers');
            $cors->children()->variableNode('headers_exposed');
            $cors->children()->integerNode('max_age')->defaultValue(86400);
            $cors->children()->booleanNode('credentials_allowed')->defaultValue(false);
        }

        return $builder;
    }
775874
public function getConfigTreeBuilder()
    {
        $treeBuilder = new TreeBuilder();
        $rootNode = $treeBuilder->root('nucleus_core');

        $rootNode
            ->fixXmlConfig('annotation_container_generator')
            ->children()
                ->arrayNode('annotation_container_generators')
                    ->prototype('array')
                        ->children()
                            ->scalarNode('annotationClass')
                                ->isRequired()
                                ->validate()
                                ->ifTrue(function($value) {return !class_exists($value,true);})
                                    ->thenInvalid('Class not found annotation [%s]')
                                ->end()
                            ->end()
                            ->scalarNode('generatorClass')
                                ->isRequired()
                                ->validate()
                                ->ifTrue(function($value) {return !class_exists($value,true);})
                                    ->thenInvalid('Class not found as annotation container generator [%s]')
                                ->ifTrue(function($value) {
                                        $reflection = new \ReflectionClass($value);
                                        return !$reflection->isSubclassOf(
                                            '\Nucleus\Bundle\CoreBundle\DependencyInjection\IAnnotationContainerGenerator'
                                        );
                                    })
                                    ->thenInvalid('Class [%s] must implement [Nucleus\Bundle\CoreBundle\DependencyInjection\IAnnotationContainerGenerator]')
                                ->end()
                            ->end()
                         ->end()
                    ->end()
                ->end()
            ->end();

        return $treeBuilder;
    }
1240992
public function getConfigTreeBuilder() : TreeBuilder
    {
        $treeBuilder = new TreeBuilder('doctrine_migrations');

        if (method_exists($treeBuilder, 'getRootNode')) {
            $rootNode = $treeBuilder->getRootNode();
        } else {
            // BC layer for symfony/config 4.1 and older
            $rootNode = $treeBuilder->root('doctrine_migrations', 'array');
        }

        $organizeMigrationModes = $this->getOrganizeMigrationsModes();

        $rootNode
            ->children()
                ->scalarNode('dir_name')->defaultValue('%kernel.root_dir%/DoctrineMigrations')->cannotBeEmpty()->end()
                ->scalarNode('namespace')->defaultValue('Application\Migrations')->cannotBeEmpty()->end()
                ->scalarNode('table_name')->defaultValue('migration_versions')->cannotBeEmpty()->end()
                ->scalarNode('column_name')->defaultValue('version')->end()
                ->scalarNode('column_length')->defaultValue(14)->end()
                ->scalarNode('executed_at_column_name')->defaultValue('executed_at')->end()
                ->scalarNode('all_or_nothing')->defaultValue(false)->end()
                ->scalarNode('name')->defaultValue('Application Migrations')->end()
                ->scalarNode('custom_template')->defaultValue(null)->end()
                ->scalarNode('organize_migrations')->defaultValue(false)
                    ->info('Organize migrations mode. Possible values are: "BY_YEAR", "BY_YEAR_AND_MONTH", false')
                    ->validate()
                        ->ifTrue(static function ($v) use ($organizeMigrationModes) {
                            if ($v === false) {
                                return false;
                            }

                            if (is_string($v) && in_array(strtoupper($v), $organizeMigrationModes)) {
                                return false;
                            }

                            return true;
                        })
                        ->thenInvalid('Invalid organize migrations mode value %s')
                    ->end()
                    ->validate()
                        ->ifString()
                            ->then(static function ($v) {
                                return constant('Doctrine\Migrations\Configuration\Configuration::VERSIONS_ORGANIZATION_' . strtoupper($v));
                            })
                    ->end()
                ->end()
            ->end();

        return $treeBuilder;
    }