Signed-off-by: Thomas Citharel <tcit@tcit.fr>pull/33375/head
parent
9b5569ff74
commit
3ce1996d5e
@ -0,0 +1,41 @@ |
||||
<?php |
||||
/** |
||||
* @copyright 2022 Thomas Citharel <nextcloud@tcit.fr> |
||||
* |
||||
* @author Thomas Citharel <nextcloud@tcit.fr> |
||||
* |
||||
* @license AGPL-3.0 |
||||
* |
||||
* This code is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU Affero General Public License, version 3, |
||||
* as published by the Free Software Foundation. |
||||
* |
||||
* This program is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
* GNU Affero General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Affero General Public License, version 3, |
||||
* along with this program. If not, see <http://www.gnu.org/licenses/> |
||||
* |
||||
*/ |
||||
namespace OC\Authentication\Token; |
||||
|
||||
use OCP\AppFramework\Utility\ITimeFactory; |
||||
use OCP\BackgroundJob\TimedJob; |
||||
|
||||
class TokenCleanupJob extends TimedJob { |
||||
private IProvider $provider; |
||||
|
||||
public function __construct(ITimeFactory $time, IProvider $provider) { |
||||
parent::__construct($time); |
||||
$this->provider = $provider; |
||||
// Run once a day at off-peak time |
||||
$this->setInterval(24 * 60 * 60); |
||||
$this->setTimeSensitivity(self::TIME_INSENSITIVE); |
||||
} |
||||
|
||||
protected function run($argument) { |
||||
$this->provider->invalidateOldTokens(); |
||||
} |
||||
} |
||||
@ -0,0 +1,47 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* @copyright 2022 Thomas Citharel <nextcloud@tcit.fr> |
||||
* |
||||
* @author Thomas Citharel <nextcloud@tcit.fr> |
||||
* |
||||
* @license GNU AGPL version 3 or any later version |
||||
* |
||||
* This program is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU Affero General Public License as |
||||
* published by the Free Software Foundation, either version 3 of the |
||||
* License, or (at your option) any later version. |
||||
* |
||||
* This program is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
* GNU Affero General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Affero General Public License |
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>. |
||||
* |
||||
*/ |
||||
namespace OC\Repair\NC24; |
||||
|
||||
use OC\Authentication\Token\TokenCleanupJob; |
||||
use OCP\BackgroundJob\IJobList; |
||||
use OCP\Migration\IOutput; |
||||
use OCP\Migration\IRepairStep; |
||||
|
||||
class AddTokenCleanupJob implements IRepairStep { |
||||
private IJobList $jobList; |
||||
|
||||
public function __construct(IJobList $jobList) { |
||||
$this->jobList = $jobList; |
||||
} |
||||
|
||||
public function getName(): string { |
||||
return 'Add token cleanup job'; |
||||
} |
||||
|
||||
public function run(IOutput $output) { |
||||
$this->jobList->add(TokenCleanupJob::class); |
||||
} |
||||
} |
||||
Loading…
Reference in new issue