Passed
Push — master ( 400934...9d586b )
by Anton
02:32
created

HttpCollectorBootloader   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 26
Duplicated Lines 0 %

Importance

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

1 Method

Rating   Name   Duplication   Size   Complexity  
A boot() 0 9 1
1
<?php
2
3
/**
4
 * Spiral Framework.
5
 *
6
 * @license   MIT
7
 * @author    Anton Titov (Wolfy-J)
8
 */
9
10
declare(strict_types=1);
11
12
namespace Spiral\Bootloader\Debug;
13
14
use Spiral\Boot\Bootloader\Bootloader;
15
use Spiral\Boot\FinalizerInterface;
16
use Spiral\Bootloader\DebugBootloader;
17
use Spiral\Bootloader\Http\HttpBootloader;
18
use Spiral\Debug\StateCollector\HttpCollector;
19
20
/**
21
 * Describes the user request and it's data.
22
 */
23
final class HttpCollectorBootloader extends Bootloader
24
{
25
    protected const DEPENDENCIES = [
26
        HttpBootloader::class,
27
        DebugBootloader::class
28
    ];
29
30
    protected const SINGLETONS = [
31
        HttpCollector::class => HttpCollector::class
32
    ];
33
34
    /**
35
     * @param HttpCollector      $httpCollector
36
     * @param HttpBootloader     $http
37
     * @param DebugBootloader    $debug
38
     * @param FinalizerInterface $finalizer
39
     */
40
    public function boot(
41
        HttpCollector $httpCollector,
42
        HttpBootloader $http,
43
        DebugBootloader $debug,
44
        FinalizerInterface $finalizer
45
    ): void {
46
        $debug->addStateCollector($httpCollector);
47
        $http->addMiddleware($httpCollector);
48
        $finalizer->addFinalizer([$httpCollector, 'reset']);
49
    }
50
}
51