Added system polling
This commit is contained in:
69
app/Models/Job.php
Normal file
69
app/Models/Job.php
Normal file
@@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Support\Facades\Config;
|
||||
|
||||
class Job extends Model
|
||||
{
|
||||
public $timestamps = false;
|
||||
|
||||
protected $casts = [
|
||||
'payload' => 'array',
|
||||
'reserved_at' => 'datetime',
|
||||
'available_at' => 'datetime',
|
||||
'created_at' => 'datetime',
|
||||
];
|
||||
|
||||
public function __construct(array $attributes = [])
|
||||
{
|
||||
parent::__construct($attributes);
|
||||
$this->table = Config::get('queue.connections.' . (Config::get('queue.default', 'database')) . '.table', 'jobs');
|
||||
}
|
||||
|
||||
public function getDisplayNameAttribute()
|
||||
{
|
||||
return $this->payload['displayName'];
|
||||
}
|
||||
|
||||
public function getMaxTriesAttribute()
|
||||
{
|
||||
return $this->payload['maxTries'];
|
||||
}
|
||||
|
||||
public function getDelayAttribute()
|
||||
{
|
||||
return $this->payload['delay'];
|
||||
}
|
||||
|
||||
public function getUUIDAttribute()
|
||||
{
|
||||
return $this->payload['uuid'];
|
||||
}
|
||||
|
||||
public function getTimeoutAttribute()
|
||||
{
|
||||
return $this->payload['timeout'];
|
||||
}
|
||||
|
||||
public function getRetryUntilAttribute()
|
||||
{
|
||||
return !is_null($this->payload['retryUntil']) ? new \Carbon\Carbon($this->payload['retryUntil']) : null;
|
||||
}
|
||||
|
||||
public function getTimeoutAtAttribute()
|
||||
{
|
||||
return !is_null($this->payload['timeout_at']) ? new \Carbon\Carbon($this->payload['timeout_at']) : null;
|
||||
}
|
||||
|
||||
public function getCommandNameAttribute()
|
||||
{
|
||||
return $this->payload['data']['commandName'];
|
||||
}
|
||||
|
||||
public function getCommandAttribute()
|
||||
{
|
||||
return unserialize($this->payload['data']['command']);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user