Completed
Push — master ( 063726...d3182c )
by
02:45
created

Configuration::getConfigTreeBuilder()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 37
Code Lines 26

Duplication

Lines 0
Ratio 0 %

Importance

Changes 13
Bugs 0 Features 3
Metric Value
c 13
b 0
f 3
dl 0
loc 37
rs 8.8571
cc 1
eloc 26
nc 1
nop 0
1
<?php
2
3
namespace DoS\UserBundle\DependencyInjection;
4
5
use DoS\ResourceBundle\DependencyInjection\AbstractResourceConfiguration;
6
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
7
8
class Configuration extends AbstractResourceConfiguration
9
{
10
    /**
11
     * {@inheritdoc}
12
     */
13
    public function getConfigTreeBuilder()
14
    {
15
        $treeBuilder = new TreeBuilder();
16
17
        $this->setDefaults($node = $treeBuilder->root('dos_user'), array(
18
            'classes' => array(
19
                'otp' => array(
20
                    'model' => 'DoS\UserBundle\Model\OneTimePassword',
21
                    'interface' => 'DoS\UserBundle\Model\OneTimePasswordInterface',
22
                ),
23
            ),
24
            'validation_groups' => array(
25
                'otp' => array('dos'),
26
            ),
27
        ));
28
29
        $node
30
            ->children()
31
                ->arrayNode('confirmation')
32
                    ->addDefaultsIfNotSet()
33
                    ->children()
34
                        ->scalarNode('actived')
35
                            ->defaultNull()
36
                            ->cannotBeEmpty()
37
                        ->end()
38
39
                        ->arrayNode('types')
40
                            ->useAttributeAsKey('name')
41
                            ->prototype('variable')
42
                        ->end()
43
                    ->end()
44
                ->end()
45
            ->end()
46
        ;
47
48
        return $treeBuilder;
49
    }
50
}
51