/** * Pop the next job off of the queue. * * @param string $queue * * @return \Illuminate\Queue\Jobs\Job|null */ public function pop($queue = null) { $queue = $this->getQueue($queue); $result = $this->azure->peekMessages($queue, new PeekMessagesOptions()); $messages = $result->getQueueMessages(); if (count($messages) > 0) { return new AzureJob($this->container, $this->azure, $messages[0], $queue); } return null; }
/** * Release the job back into the queue. * * @param int $delay * * @return void */ public function release($delay = 0) { $this->azure->updateMessage($this->queue, $this->job->getMessageId(), $this->job->getPopReceipt(), null, $delay); }