Passed
Push — master ( d93669...eeeade )
by Joas
13:37 queued 17s
created

DeleteExpiredOpenLocalEditor   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 7
c 1
b 0
f 0
dl 0
loc 22
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 10 1
A run() 0 2 1
1
<?php
2
3
declare(strict_types=1);
4
5
/**
6
 * @copyright Copyright (c) 2022 Joas Schilling <[email protected]>
7
 *
8
 * @author Joas Schilling <[email protected]>
9
 *
10
 * @license GNU AGPL version 3 or any later version
11
 *
12
 * This program is free software: you can redistribute it and/or modify
13
 * it under the terms of the GNU Affero General Public License as
14
 * published by the Free Software Foundation, either version 3 of the
15
 * License, or (at your option) any later version.
16
 *
17
 * This program is distributed in the hope that it will be useful,
18
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
 * GNU Affero General Public License for more details.
21
 *
22
 * You should have received a copy of the GNU Affero General Public License
23
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
24
 *
25
 */
26
27
namespace OCA\Files\BackgroundJob;
28
29
use OCA\Files\Controller\OpenLocalEditorController;
30
use OCA\Files\Db\OpenLocalEditorMapper;
31
use OCP\AppFramework\Utility\ITimeFactory;
32
use OCP\BackgroundJob\IJob;
33
use OCP\BackgroundJob\TimedJob;
34
35
/**
36
 * Delete all expired "Open local editor" token
37
 */
38
class DeleteExpiredOpenLocalEditor extends TimedJob {
39
	protected OpenLocalEditorMapper $mapper;
40
41
	public function __construct(
42
		ITimeFactory $time,
43
		OpenLocalEditorMapper $mapper
44
	) {
45
		parent::__construct($time);
46
		$this->mapper = $mapper;
47
48
		// Run every 12h
49
		$this->interval = 12 * 3600;
50
		$this->setTimeSensitivity(IJob::TIME_INSENSITIVE);
51
	}
52
53
	/**
54
	 * Makes the background job do its work
55
	 *
56
	 * @param array $argument unused argument
57
	 */
58
	public function run($argument): void {
59
		$this->mapper->deleteExpiredTokens($this->time->getTime());
60
	}
61
}
62