1 | <?php |
||
7 | abstract class MessageableJob extends RetryableJob |
||
8 | { |
||
9 | 36 | public function __construct(Worker $worker = null, $batch = false, $priority = 10, \DateTime $whenAt = null) |
|
10 | { |
||
11 | 36 | parent::__construct($worker, $batch, $priority, $whenAt); |
|
12 | 36 | if (!$this->getWhenAt()) { |
|
13 | 36 | $this->setWhenAt(Util::getMicrotimeDateTime()); |
|
14 | 36 | } |
|
15 | 36 | } |
|
16 | |||
17 | 33 | protected function toMessageArray() |
|
18 | { |
||
19 | return array( |
||
20 | 33 | 'worker' => $this->getWorkerName(), |
|
21 | 33 | 'args' => $this->getArgs(), |
|
22 | 33 | 'method' => $this->getMethod(), |
|
23 | 33 | 'priority' => $this->getPriority(), |
|
24 | 33 | 'whenAt' => $this->getWhenAt()->format('U.u'), |
|
25 | 33 | 'createdAt' => $this->getCreatedAt()->format('U.u'), |
|
26 | 33 | 'updatedAt' => $this->getUpdatedAt()->format('U.u'), |
|
27 | 33 | 'expiresAt' => ($expiresAt = $this->getExpiresAt()) ? $expiresAt->format('U.u') : null, |
|
28 | 33 | 'retries' => $this->getRetries(), |
|
29 | 33 | 'maxRetries' => $this->getMaxRetries(), |
|
30 | 33 | 'failures' => $this->getFailures(), |
|
31 | 33 | 'maxFailures' => $this->getMaxFailures(), |
|
32 | 33 | 'exceptions' => $this->getExceptions(), |
|
33 | 33 | 'maxExceptions' => $this->getMaxExceptions(), |
|
34 | 33 | ); |
|
35 | } |
||
36 | |||
37 | /** |
||
38 | * @return string A json_encoded version of a queueable version of the object |
||
39 | */ |
||
40 | 8 | public function toMessage() |
|
44 | |||
45 | /** |
||
46 | * @param string $message a json_encoded version of the object |
||
47 | */ |
||
48 | 5 | public function fromMessage($message) |
|
55 | |||
56 | 22 | protected function fromMessageArray(array $arr) |
|
85 | |||
86 | 22 | protected function fromMessagearrayRetries(array $arr) |
|
107 | } |
||
108 |