aboutsummaryrefslogtreecommitdiffhomepage
path: root/Digitigrade/Job/RefreshOutboundAuthToken.php
blob: 72dd466f067703d68d5426d8e002ea04b28a461e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
namespace Digitigrade\Job;

use Digitigrade\Job;
use Digitigrade\JobQueue;
use Digitigrade\Logger;
use Digitigrade\Model\Instance;

class RefreshOutboundAuthToken extends Job {
    public string $domain;
    public \DateTimeInterface $when;

    public function __construct(string $domain, \DateTimeInterface $when) {
        $this->domain = $domain;
        $this->when = $when;
        $this->remainingTries = 5;
    }

    public function run() {
        Logger::getInstance()->info("refreshing outbound token for $this->domain");
        $instance = Instance::findByDomain($this->domain);
        $instance->refreshOutboundAuthToken();
    }

    public function submit() {
        JobQueue::getInstance()->submitDelayedUntil($this, $this->when);
    }
}