Total Complexity | 6 |
Total Lines | 60 |
Duplicated Lines | 0 % |
Coverage | 100% |
Changes | 0 |
1 | <?php |
||
9 | class Get implements RequestInterface |
||
10 | { |
||
11 | const ENDPOINT = '/sobjects/%s/%s/'; |
||
12 | |||
13 | /** |
||
14 | * @var AbstractSObjectType |
||
15 | */ |
||
16 | protected $objectType; |
||
17 | |||
18 | /** |
||
19 | * @var string |
||
20 | */ |
||
21 | protected $id; |
||
22 | |||
23 | /** |
||
24 | * @var array |
||
25 | */ |
||
26 | protected $params; |
||
27 | |||
28 | 3 | public function __construct(AbstractSObjectType $objectType, string $id, array $params = []) |
|
29 | { |
||
30 | 3 | $this->objectType = $objectType; |
|
31 | 3 | $this->id = $id; |
|
32 | 3 | $this->params = $params; |
|
33 | 3 | } |
|
34 | |||
35 | /** |
||
36 | * {@inheritdoc} |
||
37 | */ |
||
38 | 2 | public function getEndpoint(): string |
|
39 | { |
||
40 | 2 | return sprintf(self::ENDPOINT, $this->objectType->value(), $this->id); |
|
41 | } |
||
42 | |||
43 | /** |
||
44 | * {@inheritdoc} |
||
45 | */ |
||
46 | 2 | public function getMethod(): RequestMethod |
|
47 | { |
||
48 | 2 | return RequestMethod::GET(); |
|
49 | } |
||
50 | |||
51 | /** |
||
52 | * {@inheritdoc} |
||
53 | */ |
||
54 | 2 | public function getParams(): array |
|
55 | { |
||
56 | 2 | if (empty($this->params)) { |
|
57 | 1 | return []; |
|
58 | } |
||
59 | |||
60 | 1 | return ['fields' => implode(',', $this->params)]; |
|
61 | } |
||
62 | |||
63 | /** |
||
64 | * {@inheritdoc} |
||
65 | */ |
||
66 | 2 | public function getContentType(): ContentType |
|
69 | } |
||
70 | } |
||
71 |