/** * @inheritdoc */ public function release(array $message, $delay = 0) { $this->sqs->changeMessageVisibility(['QueueUrl' => $message['queue'], 'ReceiptHandle' => $message['receipt-handle'], 'VisibilityTimeout' => $delay]); }
/** * {@inheritdoc} */ public function release(int $delay = 0) { parent::release($delay); $this->sqs->changeMessageVisibility(['QueueUrl' => $this->queue, 'ReceiptHandle' => $this->job['ReceiptHandle'], 'VisibilityTimeout' => $delay]); }
/** * {@inheritDoc} */ public function returnMessage(QueueMessage $message) { $queueUrl = $this->getQueueUrl($message->getQueueId()); $this->queueClient->changeMessageVisibility(["QueueUrl" => $queueUrl, "ReceiptHandle" => $message->getReceiptId(), "VisibilityTimeout" => 0]); }
/** * Mark a job as failed * * @access public * @param Job $job * @return $this */ public function failed(Job $job) { $this->sqsClient->changeMessageVisibility(array('QueueUrl' => $this->sqsUrl, 'ReceiptHandle' => $job->getId(), 'VisibilityTimeout' => 0)); return $this; }
/** * Release the job. * * @param Job $job The job to release. * * @return boolean whether the operation succeed. */ public function releaseJob(Job $job) { if (!empty($job->header['ReceiptHandle'])) { $receiptHandle = $job->header['ReceiptHandle']; $response = $this->_client->changeMessageVisibility(['QueueUrl' => $this->url, 'ReceiptHandle' => $receiptHandle, 'VisibilityTimeout' => 0]); return $response !== null; } else { return false; } }
/** * Releases a message back to the queue, making it visible again * * @param Message $message * @return bool returns true if successful, false otherwise */ public function release(Message $message) { try { // Set the visibility timeout to 0 to make the message visible in the queue again straight away $this->sqs_client->changeMessageVisibility(array('QueueUrl' => $this->url, 'ReceiptHandle' => $message->receipt_handle, 'VisibilityTimeout' => 0)); return true; } catch (Exception $e) { echo 'Error releasing job back to queue ' . $e->getMessage(); return false; } }