aboutsummaryrefslogtreecommitdiffhomepage
path: root/Digitigrade/Job/RefreshOutboundAuthToken.php
diff options
context:
space:
mode:
Diffstat (limited to 'Digitigrade/Job/RefreshOutboundAuthToken.php')
-rw-r--r--Digitigrade/Job/RefreshOutboundAuthToken.php29
1 files changed, 29 insertions, 0 deletions
diff --git a/Digitigrade/Job/RefreshOutboundAuthToken.php b/Digitigrade/Job/RefreshOutboundAuthToken.php
new file mode 100644
index 0000000..588617f
--- /dev/null
+++ b/Digitigrade/Job/RefreshOutboundAuthToken.php
@@ -0,0 +1,29 @@
+<?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 string $token;
+ 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);
+ }
+} \ No newline at end of file