TidyMiddlewareFactory::__invoke()   A
last analyzed

Complexity

Conditions 4
Paths 4

Size

Total Lines 16
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 10
CRAP Score 4

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 4
eloc 9
nc 4
nop 1
dl 0
loc 16
ccs 10
cts 10
cp 1
crap 4
rs 9.9666
c 1
b 0
f 0
1
<?php
2
declare(strict_types=1);
3
4
namespace Ctw\Middleware\TidyMiddleware;
5
6
use Psr\Container\ContainerInterface;
7
8
class TidyMiddlewareFactory
9
{
10 8
    public function __invoke(ContainerInterface $container): TidyMiddleware
11
    {
12 8
        $config = [];
13 8
        if ($container->has('config')) {
14 8
            $config = $container->get('config');
15 8
            assert(is_array($config));
16 8
            $config = $config[TidyMiddleware::class] ?? [];
17
        }
18
19 8
        $middleware = new TidyMiddleware();
20
21 8
        if ((is_countable($config) ? count($config) : 0) > 0) {
22 8
            $middleware->setConfig($config);
23
        }
24
25 8
        return $middleware;
26
    }
27
}
28