Passed
Pull Request — master (#7448)
by Ilya
14:31
created

RegionsConfiguration::getLockLifetime()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
ccs 0
cts 2
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Doctrine\ORM\Cache;
6
7
/**
8
 * Cache regions configuration
9
 */
10
class RegionsConfiguration
11
{
12
    /**-
13
     *
14
     * @var int[]
15
     */
16
    private $lifetimes = [];
17
18
    /** @var int[] */
19
    private $lockLifetimes = [];
20
21
    /** @var int */
22
    private $defaultLifetime;
23
24
    /** @var int */
25
    private $defaultLockLifetime;
26
27
    /**
28
     * @param int $defaultLifetime
29
     * @param int $defaultLockLifetime
30
     */
31 280
    public function __construct($defaultLifetime = 3600, $defaultLockLifetime = 60)
32
    {
33 280
        $this->defaultLifetime     = (int) $defaultLifetime;
34 280
        $this->defaultLockLifetime = (int) $defaultLockLifetime;
35 280
    }
36
37
    /**
38
     * @return int
39
     */
40
    public function getDefaultLifetime()
41
    {
42
        return $this->defaultLifetime;
43
    }
44
45
    /**
46
     * @param int $defaultLifetime
47
     */
48
    public function setDefaultLifetime($defaultLifetime)
49
    {
50
        $this->defaultLifetime = (int) $defaultLifetime;
51
    }
52
53
    /**
54
     * @return int
55
     */
56
    public function getDefaultLockLifetime()
57
    {
58
        return $this->defaultLockLifetime;
59
    }
60
61
    /**
62
     * @param int $defaultLockLifetime
63
     */
64
    public function setDefaultLockLifetime($defaultLockLifetime)
65
    {
66
        $this->defaultLockLifetime = (int) $defaultLockLifetime;
67
    }
68
69
    /**
70
     * @param string $regionName
71
     *
72
     * @return int
73
     */
74 232
    public function getLifetime($regionName)
75
    {
76 232
        return $this->lifetimes[$regionName] ?? $this->defaultLifetime;
77
    }
78
79
    /**
80
     * @param string $name
81
     * @param int    $lifetime
82
     */
83
    public function setLifetime($name, $lifetime)
84
    {
85
        $this->lifetimes[$name] = (int) $lifetime;
86
    }
87
88
    /**
89
     * @param string $regionName
90
     *
91
     * @return int
92
     */
93
    public function getLockLifetime($regionName)
94
    {
95
        return $this->lockLifetimes[$regionName] ?? $this->defaultLockLifetime;
96
    }
97
98
    /**
99
     * @param string $name
100
     * @param int    $lifetime
101
     */
102
    public function setLockLifetime($name, $lifetime)
103
    {
104
        $this->lockLifetimes[$name] = (int) $lifetime;
105
    }
106
}
107