Passed
Branch main (b6a268)
by Iain
04:04
created

Configuration   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 48
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 30
c 1
b 0
f 0
dl 0
loc 48
rs 10
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A getConfigTreeBuilder() 0 46 1
1
<?php
2
3
declare(strict_types=1);
4
5
/*
6
 * Copyright Humbly Arrogant Ltd 2020-2021, all rights reserved.
7
 */
8
9
namespace Parthenon\DependencyInjection;
10
11
use Parthenon\DependencyInjection\Modules\AbTesting;
12
use Parthenon\DependencyInjection\Modules\Athena;
13
use Parthenon\DependencyInjection\Modules\Cloud;
14
use Parthenon\DependencyInjection\Modules\Common;
15
use Parthenon\DependencyInjection\Modules\Funnel;
16
use Parthenon\DependencyInjection\Modules\Health;
17
use Parthenon\DependencyInjection\Modules\Invoice;
18
use Parthenon\DependencyInjection\Modules\Notification;
19
use Parthenon\DependencyInjection\Modules\Payments;
20
use Parthenon\DependencyInjection\Modules\Subscriptions;
21
use Parthenon\DependencyInjection\Modules\RuleEngine;
0 ignored issues
show
Bug introduced by
The type Parthenon\DependencyInjection\Modules\RuleEngine was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
22
use Parthenon\DependencyInjection\Modules\User;
23
use Parthenon\DependencyInjection\Modules\MultiTenancy;
24
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
25
use Symfony\Component\Config\Definition\ConfigurationInterface;
26
27
class Configuration implements ConfigurationInterface
28
{
29
    public function getConfigTreeBuilder()
30
    {
31
        $treeBuilder = new TreeBuilder('parthenon');
32
33
        $children = $treeBuilder->getRootNode()
34
                ->children();
35
36
        $abTesting = new AbTesting();
37
        $abTesting->addConfig($children);
38
39
        $athena = new Athena();
40
        $athena->addConfig($children);
41
42
        $common = new Common();
43
        $common->addConfig($children);
44
45
        $funnel = new Funnel();
46
        $funnel->addConfig($children);
47
48
        $health = new Health();
49
        $health->addConfig($children);
50
51
        $invoice = new Invoice();
52
        $invoice->addConfig($children);
53
54
        $notifcation = new Notification();
55
        $notifcation->addConfig($children);
56
57
        $payments = new Payments();
58
        $payments->addConfig($children);
59
60
        $plan = new Subscriptions();
61
        $plan->addConfig($children);
62
63
        $user = new User();
64
        $user->addConfig($children);
65
        
66
        $multiTenancy = new MultiTenancy();
67
        $multiTenancy->addConfig($children);
68
69
        $cloud = new Cloud();
70
        $cloud->addConfig($children);
71
72
        $children->end();
73
74
        return $treeBuilder;
75
    }
76
}
77