Passed
Pull Request — master (#10)
by Gocha
11:52
created

AnalysedQuery   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 48
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 4
lcom 1
cbo 0
dl 0
loc 48
ccs 0
cts 18
cp 0
rs 10
c 0
b 0
f 0

4 Methods

Rating   Name   Duplication   Size   Complexity  
A cloneQueryBuilder() 0 4 1
A setQueryBuilder() 0 5 1
A getOrderingConfigurations() 0 4 1
A setOrderingConfigurations() 0 5 1
1
<?php
2
declare(strict_types=1);
3
4
namespace Paysera\Pagination\Entity\ODM;
5
6
use Doctrine\ODM\MongoDB\Query\Builder as QueryBuilder;
7
use Paysera\Pagination\Entity\OrderingConfiguration;
8
9
/**
10
 * @internal
11
 */
12
class AnalysedQuery
13
{
14
    /**
15
     * @var QueryBuilder
16
     */
17
    private $queryBuilder;
18
19
    /**
20
     * @var OrderingConfiguration[]
21
     */
22
    private $orderingConfigurations;
23
24
    /**
25
     * @return QueryBuilder
26
     */
27
    public function cloneQueryBuilder(): QueryBuilder
28
    {
29
        return clone $this->queryBuilder;
30
    }
31
32
    /**
33
     * @param QueryBuilder $queryBuilder
34
     * @return $this
35
     */
36
    public function setQueryBuilder(QueryBuilder $queryBuilder): self
37
    {
38
        $this->queryBuilder = $queryBuilder;
39
        return $this;
40
    }
41
42
    /**
43
     * @return OrderingConfiguration[]
44
     */
45
    public function getOrderingConfigurations(): array
46
    {
47
        return $this->orderingConfigurations;
48
    }
49
50
    /**
51
     * @param OrderingConfiguration[] $orderingConfigurations
52
     * @return $this
53
     */
54
    public function setOrderingConfigurations(array $orderingConfigurations): self
55
    {
56
        $this->orderingConfigurations = $orderingConfigurations;
57
        return $this;
58
    }
59
}
60