Completed
Push — master ( fce883...b7eaea )
by Westin
03:16
created

RedisHandlerFactory::__invoke()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 12
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 16
ccs 12
cts 12
cp 1
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 12
nc 1
nop 1
crap 1
1
<?php
2
declare(strict_types=1);
3
4
namespace WShafer\PSR11MonoLog\Handler;
5
6
use Monolog\Handler\RedisHandler;
7
use Monolog\Logger;
8
use WShafer\PSR11MonoLog\ClientTrait;
9
use WShafer\PSR11MonoLog\ContainerAwareInterface;
10
use WShafer\PSR11MonoLog\FactoryInterface;
11
12
class RedisHandlerFactory implements FactoryInterface, ContainerAwareInterface
13
{
14
    use ClientTrait;
15
16 1
    public function __invoke(array $options)
17
    {
18 1
        $client  = $this->getClient($options);
19 1
        $key     = (string)  ($options['key']     ?? '');
20 1
        $level   = (int)     ($options['level']   ?? Logger::DEBUG);
21 1
        $bubble  = (boolean) ($options['bubble']  ?? true);
22 1
        $capSize = (int)     ($options['capSize'] ?? 0);
23
24 1
        return new RedisHandler(
25 1
            $client,
26 1
            $key,
27 1
            $level,
28 1
            $bubble,
29 1
            $capSize
30
        );
31
    }
32
}
33