Completed
Pull Request — develop (#3584)
by Gabriel
66:08 queued 01:47
created

LoggerChain::addLogger()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 3
ccs 0
cts 3
cp 0
rs 10
c 0
b 0
f 0
cc 1
eloc 1
nc 1
nop 1
crap 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Doctrine\DBAL\Logging;
6
7
/**
8
 * Chains multiple SQLLogger.
9
 */
10
final class LoggerChain implements SQLLogger
11
{
12
    /** @var iterable<SQLLogger> */
13
    private $loggers = [];
14
15
    /**
16
     * @param iterable<SQLLogger> $loggers
17
     */
18
    public function __construct(iterable $loggers = [])
19
    {
20
        $this->loggers = $loggers;
21
    }
22
23
    /**
24
     * {@inheritdoc}
25
     */
26
    public function startQuery(string $sql, array $params = [], array $types = []) : void
27
    {
28
        foreach ($this->loggers as $logger) {
29
            $logger->startQuery($sql, $params, $types);
30
        }
31
    }
32
33
    /**
34
     * {@inheritdoc}
35
     */
36
    public function stopQuery() : void
37
    {
38
        foreach ($this->loggers as $logger) {
39
            $logger->stopQuery();
40
        }
41
    }
42
}
43