Completed
Push — master ( 89c9f0...9aceec )
by Thomas Mauro
06:33
created

Client::getRaven()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
3
namespace Facile\SentryModule\Service;
4
5
use Facile\SentryModule\Listener\ErrorHandlerListener;
6
use Raven_Client;
7
use Raven_ErrorHandler;
8
use Facile\SentryModule\Options\ClientOptions;
9
use Zend\EventManager\ListenerAggregateInterface;
10
11
class Client
12
{
13
    /**
14
     * @var Raven_Client
15
     */
16
    protected $raven;
17
    /**
18
     * @var Raven_ErrorHandler
19
     */
20
    protected $errorHandler;
21
    /**
22
     * @var ListenerAggregateInterface
23
     */
24
    protected $errorHandlerListener;
25
    /**
26
     * @var ClientOptions
27
     */
28
    protected $options;
29
30
    /**
31
     * Client constructor.
32
     *
33
     * @param Raven_Client       $raven
34
     * @param ClientOptions      $options
35
     * @param Raven_ErrorHandler $errorHandler
36
     */
37
    public function __construct(Raven_Client $raven, ClientOptions $options, Raven_ErrorHandler $errorHandler = null)
38
    {
39
        $this->raven = $raven;
40
        $this->options = $options;
41
        $this->errorHandler = $errorHandler;
42
    }
43
44
    /**
45
     * @return Raven_Client
46
     */
47
    public function getRaven()
48
    {
49
        return $this->raven;
50
    }
51
52
    /**
53
     * @return Raven_ErrorHandler
54
     */
55
    public function getErrorHandler()
56
    {
57
        if (!$this->errorHandler) {
58
            $this->errorHandler = new Raven_ErrorHandler($this->getRaven());
59
        }
60
        return $this->errorHandler;
61
    }
62
63
    /**
64
     * @return ClientOptions
65
     */
66
    public function getOptions()
67
    {
68
        return $this->options;
69
    }
70
71
    /**
72
     * @return ListenerAggregateInterface
73
     */
74
    public function getErrorHandlerListener()
75
    {
76
        if (!$this->errorHandlerListener) {
77
            $this->errorHandlerListener = new ErrorHandlerListener($this);
78
        }
79
        return $this->errorHandlerListener;
80
    }
81
82
    /**
83
     * @param ListenerAggregateInterface $errorHandlerListener
84
     * @return $this
85
     */
86
    public function setErrorHandlerListener(ListenerAggregateInterface $errorHandlerListener)
87
    {
88
        $this->errorHandlerListener = $errorHandlerListener;
89
        return $this;
90
    }
91
}
92