ExceptionDescribersQueue   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 4
lcom 1
cbo 1
dl 0
loc 25
ccs 9
cts 9
cp 1
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A extractErrors() 0 12 3
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Faecie\Bundle\JsonApiErrorResponseBundle\ExceptionDescriber;
6
7
use Throwable;
8
9
class ExceptionDescribersQueue implements ExceptionDescriberInterface
10
{
11
    private $describersQueue;
12
13
    /**
14
     * @param ExceptionDescriberInterface[] $describersQueue
15
     */
16 2
    public function __construct(array $describersQueue)
17
    {
18 2
        $this->describersQueue = $describersQueue;
19 2
    }
20
21 2
    public function extractErrors(Throwable $exception): array
22
    {
23 2
        foreach ($this->describersQueue as $describer) {
24 1
            $result = $describer->extractErrors($exception);
25
26 1
            if (! empty($result)) {
27 1
                return $result;
28
            }
29
        }
30
31 1
        return [];
32
    }
33
}
34