Total Complexity | 6 |
Total Lines | 54 |
Duplicated Lines | 0 % |
Coverage | 100% |
Changes | 0 |
1 | <?php |
||
13 | class LinksParser |
||
14 | { |
||
15 | /** |
||
16 | * @var \Swis\JsonApi\Client\Parsers\MetaParser |
||
17 | */ |
||
18 | private $metaParser; |
||
19 | |||
20 | /** |
||
21 | * @param \Swis\JsonApi\Client\Parsers\MetaParser $metaParser |
||
22 | */ |
||
23 | 140 | public function __construct(MetaParser $metaParser) |
|
24 | { |
||
25 | 140 | $this->metaParser = $metaParser; |
|
26 | 140 | } |
|
27 | |||
28 | /** |
||
29 | * @param array $links |
||
30 | * |
||
31 | * @return \Swis\JsonApi\Client\Links |
||
32 | */ |
||
33 | 65 | public function parse(array $links): Links |
|
34 | { |
||
35 | 65 | return new Links( |
|
36 | 65 | array_map( |
|
37 | 26 | function ($link) { |
|
38 | 65 | return $this->buildLink($link); |
|
39 | 65 | }, |
|
40 | 65 | $links |
|
41 | ) |
||
42 | ); |
||
43 | } |
||
44 | |||
45 | /** |
||
46 | * @param \Art4\JsonApiClient\DocumentLink|\Art4\JsonApiClient\ErrorLink|\Art4\JsonApiClient\Link|\Art4\JsonApiClient\RelationshipLink|\Art4\JsonApiClient\ResourceItemLink|string $link |
||
47 | * |
||
48 | * @return \Swis\JsonApi\Client\Link |
||
49 | */ |
||
50 | 65 | private function buildLink($link): Link |
|
57 | } |
||
58 | |||
59 | /** |
||
60 | * @param \Art4\JsonApiClient\Meta $meta |
||
61 | * |
||
62 | * @return \Swis\JsonApi\Client\Meta |
||
63 | */ |
||
64 | 10 | private function buildMeta(JsonApiMeta $meta): Meta |
|
67 | } |
||
68 | } |
||
69 |