Completed
Push — master ( 965a67...27eb1e )
by Krzysztof
06:05 queued 03:13
created

DateTimeRangeCriteria::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 7
ccs 4
cts 4
cp 1
rs 9.4285
cc 1
eloc 5
nc 1
nop 2
crap 1
1
<?php
2
3
namespace KGzocha\Searcher\Criteria;
4
5
/**
6
 * Class DateTimeRangeFilterModel.
7
 */
8
class DateTimeRangeCriteria implements CriteriaInterface
9
{
10
    /**
11
     * @var \DateTime
12
     */
13
    private $startingDateTime;
14
15
    /**
16
     * @var \DateTime
17
     */
18
    private $endingDateTime;
19
20
    /**
21
     * @param \DateTime $startingDateTime
22
     * @param \DateTime $endingDateTime
23
     */
24 3
    public function __construct(
25
        \DateTime $startingDateTime = null,
26
        \DateTime $endingDateTime = null
27
    ) {
28 3
        $this->startingDateTime = $startingDateTime;
29 3
        $this->endingDateTime = $endingDateTime;
30 3
    }
31
32
    /**
33
     * @return \DateTime
34
     */
35 1
    public function getStartingDateTime()
36
    {
37 1
        return $this->startingDateTime;
38
    }
39
40
    /**
41
     * @param \DateTime|null $startingDateTime
42
     *
43
     * @return DateTimeRangeCriteria
44
     */
45 1
    public function setStartingDateTime(
46
        \DateTime $startingDateTime = null
47
    ) {
48 1
        $this->startingDateTime = $startingDateTime;
49
50 1
        return $this;
51
    }
52
53
    /**
54
     * @return \DateTime
55
     */
56 1
    public function getEndingDateTime()
57
    {
58 1
        return $this->endingDateTime;
59
    }
60
61
    /**
62
     * @param \DateTime|null $endingDateTime
63
     *
64
     * @return DateTimeRangeCriteria
65
     */
66 1
    public function setEndingDateTime(
67
        \DateTime $endingDateTime = null
68
    ) {
69 1
        $this->endingDateTime = $endingDateTime;
70
71 1
        return $this;
72
    }
73
74
    /**
75
     * {@inheritdoc}
76
     */
77 2
    public function shouldBeApplied()
78
    {
79 2
        return $this->startingDateTime instanceof \DateTime
80 2
            || $this->endingDateTime instanceof \DateTime;
81
    }
82
}
83