Passed
Push — master ( 58efcc...b174ce )
by Michel
01:02 queued 11s
created

SyncOptions::setFillIssueComment()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
eloc 1
dl 0
loc 3
ccs 2
cts 2
cp 1
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
crap 1
1
<?php
2
declare(strict_types=1);
3
4
namespace TogglJira\Options;
5
6
use Zend\Stdlib\AbstractOptions;
7
8
class SyncOptions extends AbstractOptions
9
{
10
    /**
11
     * @var \DateTimeInterface
12
     */
13
    private $lastSync;
14
15
    /**
16
     * @var string
17
     */
18
    private $jiraUsername;
19
20
    /**
21
     * @var string
22
     */
23
    private $jiraLoginUsername;
24
25
    /**
26
     * @var string
27
     */
28
    private $jiraPassword;
29
30
    /**
31
     * @var string
32
     */
33
    private $togglApiKey;
34
35
    /**
36
     * @var string
37
     */
38
    private $jiraUrl;
39
40
    /**
41
     * @var string
42
     */
43
    private $fillIssueID;
44
45
    /**
46
     * @var string
47
     */
48
    private $fillIssueComment;
49
50
    /**
51
     * @var bool
52
     */
53
    private $notifyUsers;
54
55
    /**
56
     * @param array|null $options
57
     * @throws \Exception
58
     */
59 3
    public function __construct(array $options = null)
60
    {
61 3
        $this->lastSync = new \DateTimeImmutable('-1 day');
62
63 3
        parent::__construct($options);
64 3
    }
65
66
    /**
67
     * @return string
68
     */
69 2
    public function getTogglApiKey(): string
70
    {
71 2
        return $this->togglApiKey;
72
    }
73
74
    /**
75
     * @param string $togglApiKey
76
     */
77 3
    public function setTogglApiKey(string $togglApiKey): void
78
    {
79 3
        $this->togglApiKey = $togglApiKey;
80 3
    }
81
82
    /**
83
     * @return string
84
     */
85 2
    public function getJiraPassword(): string
86
    {
87 2
        return $this->jiraPassword;
88
    }
89
90
    /**
91
     * @param string $jiraPassword
92
     */
93 3
    public function setJiraPassword(string $jiraPassword): void
94
    {
95 3
        $this->jiraPassword = $jiraPassword;
96 3
    }
97
98
    /**
99
     * @return string
100
     */
101 2
    public function getJiraUsername(): string
102
    {
103 2
        return $this->jiraUsername;
104
    }
105
106
    /**
107
     * @param string $jiraUsername
108
     */
109 3
    public function setJiraUsername(string $jiraUsername): void
110
    {
111 3
        $this->jiraUsername = $jiraUsername;
112 3
    }
113
114
115
    /**
116
     * @return string
117
     */
118 2
    public function getJiraLoginUsername(): string
119
    {
120 2
        return $this->jiraLoginUsername;
121
    }
122
123
    /**
124
     * @param string $jiraLoginUsername
125
     */
126 2
    public function setJiraLoginUsername(string $jiraLoginUsername): void
127
    {
128 2
        $this->jiraLoginUsername = $jiraLoginUsername;
129 2
    }
130
131
    /**
132
     * @return \DateTimeInterface
133
     */
134 2
    public function getLastSync(): \DateTimeInterface
135
    {
136 2
        return $this->lastSync;
137
    }
138
139
    /**
140
     * @param \DateTimeInterface $lastSync
141
     */
142 3
    public function setLastSync(\DateTimeInterface $lastSync): void
143
    {
144 3
        $this->lastSync = $lastSync;
145 3
    }
146
147
    /**
148
     * @return string
149
     */
150 2
    public function getJiraUrl(): string
151
    {
152 2
        return $this->jiraUrl;
153
    }
154
155
    /**
156
     * @param string $jiraUrl
157
     */
158 3
    public function setJiraUrl(string $jiraUrl): void
159
    {
160 3
        $this->jiraUrl = $jiraUrl;
161 3
    }
162
163
    /**
164
     * @return string
165
     */
166 1
    public function getFillIssueID(): string
167
    {
168 1
        return $this->fillIssueID;
169
    }
170
171
    /**
172
     * @param string $fillIssueID
173
     */
174 1
    public function setFillIssueID(string $fillIssueID): void
175
    {
176 1
        $this->fillIssueID = $fillIssueID;
177 1
    }
178
179
    /**
180
     * @return string
181
     */
182 1
    public function getFillIssueComment(): string
183
    {
184 1
        return $this->fillIssueComment;
185
    }
186
187
    /**
188
     * @param string $fillIssueComment
189
     */
190 1
    public function setFillIssueComment(string $fillIssueComment): void
191
    {
192 1
        $this->fillIssueComment = $fillIssueComment;
193 1
    }
194
195
    /**
196
     * @return bool
197
     */
198 2
    public function isNotifyUsers(): bool
199
    {
200 2
        return $this->notifyUsers;
201
    }
202
203
    /**
204
     * @param bool $notifyUsers
205
     */
206 2
    public function setNotifyUsers(bool $notifyUsers): void
207
    {
208 2
        $this->notifyUsers = $notifyUsers;
209 2
    }
210
211
    /**
212
     * @return array
213
     */
214 1
    public function toArray(): array
215
    {
216
        return [
217 1
            'lastSync' => $this->getLastSync(),
218 1
            'jiraUrl' => $this->getJiraUrl(),
219 1
            'jiraUsername' => $this->getJiraUsername(),
220 1
            'jiraLoginUsername' => $this->getJiraLoginUsername(),
221 1
            'jiraPassword' => $this->getJiraPassword(),
222 1
            'togglApiKey' => $this->getTogglApiKey(),
223 1
            'fillIssueID' => $this->getFillIssueID(),
224 1
            'fillIssueComment' => $this->getFillIssueComment(),
225 1
            'notifyUsers' => $this->isNotifyUsers(),
226
        ];
227
    }
228
}
229