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<class-string, class-string|object|callable> $bindings |
|
|
|
|
16
|
|
|
* @param ?array<string, class-string|object|callable> $externalServices |
17
|
|
|
* @param ?list<string> $projectNamespaces |
18
|
|
|
* @param ?array<string,mixed> $configKeyValues |
19
|
|
|
* @param ?list<callable> $genericListeners |
20
|
|
|
* @param ?array<class-string,list<callable>> $specificListeners |
21
|
|
|
* @param ?list<class-string> $gacelaConfigsToExtend |
22
|
|
|
* @param ?list<class-string|callable> $plugins |
23
|
|
|
* @param ?array<string,list<Closure>> $servicesToExtend |
24
|
93 |
|
*/ |
25
|
|
|
public function __construct( |
26
|
|
|
public readonly AppConfigBuilder $appConfigBuilder, |
27
|
|
|
public readonly SuffixTypesBuilder $suffixTypesBuilder, |
28
|
|
|
public readonly BindingsBuilder $bindingsBuilder, |
29
|
|
|
public readonly ?array $bindings, |
30
|
|
|
public readonly ?array $externalServices, |
31
|
|
|
public readonly ?bool $shouldResetInMemoryCache, |
32
|
|
|
public readonly ?bool $fileCacheEnabled, |
33
|
|
|
public readonly ?string $fileCacheDirectory, |
34
|
|
|
public readonly ?array $projectNamespaces, |
35
|
|
|
public readonly ?array $configKeyValues, |
36
|
|
|
public readonly ?array $genericListeners, |
37
|
|
|
public readonly ?array $specificListeners, |
38
|
|
|
public readonly ?bool $areEventListenersEnabled, |
39
|
|
|
public readonly ?array $gacelaConfigsToExtend, |
40
|
|
|
public readonly ?array $plugins, |
41
|
93 |
|
public readonly ?array $servicesToExtend, |
42
|
|
|
) { |
43
|
93 |
|
} |
44
|
|
|
} |
45
|
|
|
|