Total Complexity | 4 |
Total Lines | 38 |
Duplicated Lines | 0 % |
Coverage | 93.75% |
Changes | 3 | ||
Bugs | 0 | Features | 0 |
1 | <?php |
||
14 | final class RefreshSameCommand implements CommandInterface |
||
15 | { |
||
16 | public function __construct( |
||
20 | 11 | } |
|
21 | |||
22 | 11 | /** |
|
23 | 11 | * @return void |
|
24 | */ |
||
25 | #[\Override] |
||
26 | public function command(MethodInvocation $invocation, ResourceObject $ro) |
||
27 | { |
||
28 | unset($invocation); |
||
29 | 8 | $getQuery = $this->getQuery($ro); |
|
30 | $delUri = clone $ro->uri; |
||
31 | 8 | $delUri->query = $getQuery; |
|
32 | 8 | ||
33 | // delete data in repository |
||
34 | $this->repository->purge($delUri); |
||
35 | 8 | ||
36 | 8 | // GET for re-generate (in interceptor) |
|
37 | 8 | $ro->uri->query = $getQuery; |
|
38 | 7 | $get = [$ro, 'onGet']; |
|
39 | 7 | if (is_callable($get)) { |
|
40 | call_user_func_array($get, array_values($getQuery)); |
||
41 | } |
||
42 | 7 | } |
|
43 | |||
44 | /** |
||
45 | 7 | * @return array<string, mixed> |
|
46 | 7 | * |
|
47 | 7 | * @throws ReflectionException |
|
48 | */ |
||
49 | private function getQuery(ResourceObject $ro): array |
||
52 | } |
||
53 | } |
||
54 |