Total Complexity | 8 |
Total Lines | 55 |
Duplicated Lines | 0 % |
Coverage | 100% |
Changes | 0 |
1 | <?php |
||
12 | class LinksParser |
||
13 | { |
||
14 | /** |
||
15 | * @var \Swis\JsonApi\Client\Parsers\MetaParser |
||
16 | */ |
||
17 | private $metaParser; |
||
18 | |||
19 | /** |
||
20 | * @param \Swis\JsonApi\Client\Parsers\MetaParser $metaParser |
||
21 | */ |
||
22 | 618 | public function __construct(MetaParser $metaParser) |
|
23 | { |
||
24 | 618 | $this->metaParser = $metaParser; |
|
25 | 618 | } |
|
26 | |||
27 | /** |
||
28 | * @param mixed $data |
||
29 | * |
||
30 | * @return \Swis\JsonApi\Client\Links |
||
31 | */ |
||
32 | 108 | public function parse($data): Links |
|
33 | { |
||
34 | 108 | return new Links( |
|
35 | 108 | array_map( |
|
36 | 36 | function ($link) { |
|
37 | 108 | return $this->buildLink($link); |
|
38 | 108 | }, |
|
39 | 108 | (array)$data |
|
40 | ) |
||
41 | ); |
||
42 | } |
||
43 | |||
44 | /** |
||
45 | * @param mixed $data |
||
46 | * |
||
47 | * @return \Swis\JsonApi\Client\Link |
||
48 | */ |
||
49 | 108 | private function buildLink($data): ? Link |
|
67 | } |
||
68 | } |
||
69 |