ClientAbstract   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 44
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 9
dl 0
loc 44
ccs 0
cts 7
cp 0
rs 10
c 2
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getAccessToken() 0 3 1
A __construct() 0 7 2
1
<?php
2
/**
3
 * SocialConnect project
4
 * @author: Patsura Dmitry @ovr <[email protected]>
5
 */
6
declare(strict_types=1);
7
8
namespace SocialConnect\Common;
9
10
use SocialConnect\Provider\Consumer;
11
12
abstract class ClientAbstract
13
{
14
    /**
15
     * @var Consumer
16
     */
17
    protected $consumer;
18
19
    /**
20
     * @var string
21
     */
22
    protected $accessToken;
23
24
    /**
25
     * @var HttpStack
26
     */
27
    protected $httpStack;
28
29
    /**
30
     * @param HttpStack $httpStack
31
     * @param Consumer $consumer
32
     * @param string|null $accessToken
33
     */
34
    public function __construct(HttpStack $httpStack, Consumer $consumer, ?string $accessToken = null)
35
    {
36
        $this->consumer = $consumer;
37
        $this->httpStack = $httpStack;
38
39
        if ($accessToken) {
40
            $this->setAccessToken($accessToken);
41
        }
42
    }
43
44
    /**
45
     * @return string
46
     */
47
    public function getAccessToken()
48
    {
49
        return $this->accessToken;
50
    }
51
52
    /**
53
     * @param string $accessToken
54
     */
55
    abstract public function setAccessToken($accessToken);
56
}
57