Completed
Push — master ( 0585fd...6ce168 )
by Mickael
03:38
created

Configuration   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 90
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 3
dl 0
loc 90
ccs 0
cts 80
cp 0
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
B getConfigTreeBuilder() 0 82 1
1
<?php
2
3
/**
4
 * Gearman Bundle for Symfony2 / Symfony3
5
 *
6
 * For the full copyright and license information, please view the LICENSE
7
 * file that was distributed with this source code.
8
 *
9
 * Feel free to edit as you please, and have fun.
10
 *
11
 * @author Marc Morera <[email protected]>
12
 */
13
14
namespace Mkk\GearmanBundle\DependencyInjection;
15
16
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
17
use Symfony\Component\Config\Definition\ConfigurationInterface;
18
19
/**
20
 * This is the class that validates and merges configuration from your
21
 * app/config files
22
 */
23
class Configuration implements ConfigurationInterface
24
{
25
    /**
26
     * Generates the configuration tree builder.
27
     *
28
     * @return TreeBuilder The tree builder
29
     */
30
    public function getConfigTreeBuilder()
31
    {
32
        $treeBuilder = new TreeBuilder();
33
        $rootNode = $treeBuilder->root('gearman');
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 4 spaces but found 1 space

This check looks for multiple assignments in successive lines of code. It will report an issue if the operators are not in a straight line.

To visualize

$a = "a";
$ab = "ab";
$abc = "abc";

will produce issues in the first and second line, while this second example

$a   = "a";
$ab  = "ab";
$abc = "abc";

will produce no issues.

Loading history...
34
35
        $rootNode
36
            ->children()
37
                ->arrayNode('bundles')
38
                    ->prototype('array')
39
                        ->children()
40
                            ->scalarNode('name')
41
                                ->isRequired()
42
                                ->cannotBeEmpty()
43
                            ->end()
44
                            ->booleanNode('active')
45
                                ->defaultFalse()
46
                            ->end()
47
                            ->arrayNode('include')
48
                                ->prototype('scalar')->end()
49
                            ->end()
50
                            ->arrayNode('ignore')
51
                                ->prototype('scalar')->end()
52
                            ->end()
53
                        ->end()
54
                    ->end()
55
                ->end()
56
                ->arrayNode('servers')
57
                    ->performNoDeepMerging()
58
                    ->defaultValue(array(
59
                        'localhost' =>  array(
60
                            'host'  =>  '127.0.0.1',
61
                            'port'  =>  '4730',
62
                        ),
63
                    ))
64
                    ->prototype('array')
65
                        ->children()
66
                            ->scalarNode('host')
67
                                ->isRequired()
68
                                ->cannotBeEmpty()
69
                            ->end()
70
                            ->integerNode('port')
71
                                ->defaultValue('4730')
72
                            ->end()
73
                        ->end()
74
                    ->end()
75
                ->end()
76
                ->arrayNode('defaults')
77
                    ->addDefaultsIfNotSet()
78
                    ->children()
79
                        ->integerNode('iterations')
80
                            ->min(0)
81
                            ->defaultValue(0)
82
                        ->end()
83
                        ->scalarNode('method')
84
                            ->defaultValue('doNormal')
85
                        ->end()
86
                        ->booleanNode('callbacks')
87
                            ->defaultTrue()
88
                        ->end()
89
                        ->scalarNode('job_prefix')
90
                            ->defaultNull()
91
                        ->end()
92
                        ->booleanNode('generate_unique_key')
93
                            ->defaultTrue()
94
                        ->end()
95
                        ->booleanNode('workers_name_prepend_namespace')
96
                            ->defaultTrue()
97
                        ->end()
98
                        ->integerNode('minimum_execution_time')
99
                            ->min(0)
100
                            ->defaultValue(0)
101
                        ->end()
102
                        ->integerNode('timeout')
103
                            ->min(0)
104
                            ->defaultValue(0)
105
                        ->end()
106
                    ->end()
107
                ->end()
108
            ->end();
109
110
        return $treeBuilder;
111
    }
112
}
0 ignored issues
show
Coding Style introduced by
As per coding style, files should not end with a newline character.

This check marks files that end in a newline character, i.e. an empy line.

Loading history...
113