ContextProvider   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 2
Metric Value
eloc 11
c 2
b 0
f 2
dl 0
loc 23
rs 10
wmc 5

1 Method

Rating   Name   Duplication   Size   Complexity  
A getContext() 0 21 5
1
<?php
2
3
declare(strict_types=1);
4
5
namespace LAG\AdminBundle\Request\Context;
6
7
use LAG\AdminBundle\Metadata\CollectionOperationInterface;
8
use LAG\AdminBundle\Metadata\OperationInterface;
9
use Symfony\Component\HttpFoundation\Request;
10
11
class ContextProvider implements ContextProviderInterface
12
{
13
    public function getContext(OperationInterface $operation, Request $request): array
14
    {
15
        $context = [];
16
17
        if ($operation instanceof CollectionOperationInterface) {
18
            $pageParameter = $operation->getPageParameter();
19
20
            if ($request->query->has($pageParameter)) {
21
                $context[$pageParameter] = $request->query->get($pageParameter);
22
            }
23
24
            if ($request->query->has('sort')) {
25
                $context['sort'] = $request->query->get('sort');
26
            }
27
28
            if ($request->query->has('order')) {
29
                $context['order'] = $request->query->get('order');
30
            }
31
        }
32
33
        return $context;
34
    }
35
}
36