AbstractTranslator   A
last analyzed

Complexity

Total Complexity 7

Size/Duplication

Total Lines 82
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 0
Metric Value
wmc 7
lcom 0
cbo 1
dl 0
loc 82
rs 10
c 0
b 0
f 0

6 Methods

Rating   Name   Duplication   Size   Complexity  
A getHttpClient() 0 4 1
A log() 0 6 2
A setHttpClient() 0 6 1
A setLogger() 0 6 1
A getMessageFactory() 0 4 1
A setMessageFactory() 0 6 1
1
<?php
2
3
namespace Happyr\AutoFallbackTranslationBundle\Service;
4
5
use Http\Client\HttpClient;
6
use Http\Message\MessageFactory;
7
use Psr\Log\LoggerInterface;
8
9
/**
10
 * @author Tobias Nyholm <[email protected]>
11
 */
12
abstract class AbstractTranslator
13
{
14
    /**
15
     * @var HttpClient
16
     */
17
    private $httpClient;
18
19
    /**
20
     * @var MessageFactory
21
     */
22
    private $messageFactory;
23
24
    /**
25
     * @var LoggerInterface
26
     */
27
    private $logger;
28
29
    /**
30
     * @return HttpClient
31
     */
32
    protected function getHttpClient()
33
    {
34
        return $this->httpClient;
35
    }
36
37
    /**
38
     * Log something.
39
     *
40
     * @param string $level
41
     * @param string $message
42
     */
43
    protected function log($level, $message)
44
    {
45
        if ($this->logger !== null) {
46
            $this->logger->log($level, $message);
47
        }
48
    }
49
50
    /**
51
     * @param HttpClient $httpClient
52
     *
53
     * @return AbstractTranslator
54
     */
55
    public function setHttpClient(HttpClient $httpClient)
56
    {
57
        $this->httpClient = $httpClient;
58
59
        return $this;
60
    }
61
62
    /**
63
     * @param LoggerInterface $logger
64
     *
65
     * @return AbstractTranslator
66
     */
67
    public function setLogger(LoggerInterface $logger)
68
    {
69
        $this->logger = $logger;
70
71
        return $this;
72
    }
73
74
    /**
75
     * @return MessageFactory
76
     */
77
    protected function getMessageFactory()
78
    {
79
        return $this->messageFactory;
80
    }
81
82
    /**
83
     * @param MessageFactory $messageFactory
84
     *
85
     * @return AbstractTranslator
86
     */
87
    public function setMessageFactory($messageFactory)
88
    {
89
        $this->messageFactory = $messageFactory;
90
91
        return $this;
92
    }
93
}
94