LogThrowable   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 2
dl 0
loc 28
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A __invoke() 0 4 1
1
<?php
2
/**
3
 * Polder Knowledge / log-module (https://polderknowledge.com)
4
 *
5
 * @link https://github.com/polderknowledge/log-module for the canonical source repository
6
 * @copyright Copyright (c) 2016-2017 Polder Knowledge (https://polderknowledge.com)
7
 * @license https://github.com/polderknowledge/log-module/blob/master/LICENSE.md MIT
8
 */
9
10
namespace PolderKnowledge\LogModule\View\Helper;
11
12
use Exception;
13
use PolderKnowledge\LogModule\TaskService\ExceptionLogger;
14
use PolderKnowledge\LogModule\TaskService\ThrowableLogger;
15
use Throwable;
16
use Zend\View\Helper\AbstractHelper;
17
18
/**
19
 * A view helper that helps to log a throwable object.
20
 */
21
final class LogThrowable extends AbstractHelper
22
{
23
    /**
24
     * @var ThrowableLogger
25
     */
26
    private $logger;
27
28
    /**
29
     * Initializes a new instance of this class.
30
     *
31
     * @param ThrowableLogger $logger
32
     */
33 8
    public function __construct(ThrowableLogger $logger)
34
    {
35 8
        $this->logger = $logger;
36 8
    }
37
38
    /**
39
     * Called when the view helper is invoked.
40
     *
41
     * @param Throwable $throwable The throwable object to log.
42
     * @return void
43
     */
44 3
    public function __invoke(Throwable $throwable)
45
    {
46 3
        $this->logger->logThrowable($throwable);
47 3
    }
48
}
49