aboutsummaryrefslogtreecommitdiffhomepage
path: root/Digitigrade/Job/RequestOutboundAuthToken.php
blob: ef4de0328d897b6cf141bb3bb6b034e0837fa8ed (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 RequestOutboundAuthToken extends Job {
    public string $domain;
    public string $secret;

    public function __construct(string $domain, string $secret) {
        $this->domain = $domain;
        $this->secret = $secret;
        $this->remainingTries = 1;
    }

    public function run() {
        Logger::getInstance()->info("requesting token from $this->domain in response to their dialback challenge");
        $instance = Instance::findByHostname($this->domain);
        $instance->requestOutboundAuthToken($this->secret);
    }

    public function submit() {
        JobQueue::getInstance()->submitUrgent($this);
    }
}