/**
  * 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);
 }