GacelaConfigTransfer   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 1
c 2
b 0
f 0
dl 0
loc 37
ccs 5
cts 5
cp 1
rs 10
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 21 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Gacela\Framework\Bootstrap\Setup;
6
7
use Closure;
8
use Gacela\Framework\Config\GacelaConfigBuilder\AppConfigBuilder;
9
use Gacela\Framework\Config\GacelaConfigBuilder\BindingsBuilder;
10
use Gacela\Framework\Config\GacelaConfigBuilder\SuffixTypesBuilder;
11
12
final class GacelaConfigTransfer
13
{
14
    /**
15
     * @param ?array<string, class-string|object|callable> $externalServices
16
     * @param ?list<string> $projectNamespaces
17
     * @param ?array<string,mixed> $configKeyValues
18
     * @param ?list<callable> $genericListeners
19
     * @param ?array<class-string,list<callable>> $specificListeners
20
     * @param ?list<class-string> $gacelaConfigsToExtend
21
     * @param ?list<class-string|callable> $plugins
22
     * @param ?array<string,list<Closure>> $servicesToExtend
23
     * @param array<string,Closure> $factories
24 93
     * @param array<string,Closure> $protectedServices
25
     * @param array<string,string> $aliases
26
     * @param array<string,array<class-string,class-string|callable|object>> $contextualBindings
27
     */
28
    public function __construct(
29
        public readonly AppConfigBuilder $appConfigBuilder,
30
        public readonly SuffixTypesBuilder $suffixTypesBuilder,
31
        public readonly BindingsBuilder $bindingsBuilder,
32
        public readonly ?array $externalServices,
33
        public readonly ?bool $shouldResetInMemoryCache,
34
        public readonly ?bool $fileCacheEnabled,
35
        public readonly ?string $fileCacheDirectory,
36
        public readonly ?array $projectNamespaces,
37
        public readonly ?array $configKeyValues,
38
        public readonly ?array $genericListeners,
39
        public readonly ?array $specificListeners,
40
        public readonly ?bool $areEventListenersEnabled,
41 93
        public readonly ?array $gacelaConfigsToExtend,
42
        public readonly ?array $plugins,
43 93
        public readonly ?array $servicesToExtend,
44
        public readonly array $factories,
45 93
        public readonly array $protectedServices,
46
        public readonly array $aliases,
47
        public readonly array $contextualBindings,
48 93
    ) {
49
    }
50
}
51