Completed
Pull Request — master (#8)
by Wouter
02:22
created

Configuration::getConfigTreeBuilder()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 24
Code Lines 18

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 24
rs 8.9713
cc 1
eloc 18
nc 1
nop 0
1
<?php
2
3
namespace SumoCoders\FrameworkMultiUserBundle\DependencyInjection;
4
5
use Symfony\Component\Config\Definition\ConfigurationInterface;
6
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
7
8
class Configuration implements ConfigurationInterface
9
{
10
    public function getConfigTreeBuilder()
11
    {
12
        $treeBuilder = new TreeBuilder();
13
        $rootNode = $treeBuilder->root('sumo_coders_framework_multi_user');
14
15
        $rootNode
16
            ->children()
17
                ->arrayNode('redirect_routes')
18
                    ->example(array(
19
                        'Acme\DemoBundle\Entity\User1' => 'dashboard_route',
20
                    ))
21
                    ->useAttributeAsKey('class')
22
                    ->prototype('array')
23
                        ->beforeNormalization()->ifString()->then(function ($v) { return array('route' => $v); })->end()
24
                        ->children()
25
                            ->scalarNode('route')->cannotBeEmpty()->end()
26
                        ->end()
27
                    ->end()
28
                ->end()
29
            ->end()
30
        ;
31
32
        return $treeBuilder;
33
    }
34
}
35