function QueueWorkerInterface::processItem
Same name and namespace in other branches
- 11.x core/lib/Drupal/Core/Queue/QueueWorkerInterface.php \Drupal\Core\Queue\QueueWorkerInterface::processItem()
Works on a single queue item.
Parameters
mixed $data: The data that was passed to \Drupal\Core\Queue\QueueInterface::createItem() when the item was queued.
Throws
\Drupal\Core\Queue\RequeueException Processing is not yet finished. This will allow another process to claim the item immediately.
\Exception A QueueWorker plugin may throw an exception to indicate there was a problem. The cron process will log the exception, and leave the item in the queue to be processed again later.
\Drupal\Core\Queue\SuspendQueueException More specifically, a SuspendQueueException should be thrown when a QueueWorker plugin is aware that the problem will affect all subsequent workers of its queue. For example, a callback that makes HTTP requests may find that the remote server is not responding. The cron process will behave as with a normal Exception, and in addition will not attempt to process further items from the current item's queue during the current cron run.
See also
\Drupal\Core\Cron::processQueues()
3 methods override QueueWorkerInterface::processItem()
- CronQueueTestBrokenQueue::processItem in core/
modules/ system/ tests/ modules/ cron_queue_test/ src/ Plugin/ QueueWorker/ CronQueueTestBrokenQueue.php - Works on a single queue item.
- LocaleTranslation::processItem in core/
modules/ locale/ src/ Plugin/ QueueWorker/ LocaleTranslation.php - The translation update functions executed here are batch operations which are also used in translation update batches. The batch functions may need to be executed multiple times to complete their task, typically this is the translation import…
- ThumbnailDownloader::processItem in core/
modules/ media/ src/ Plugin/ QueueWorker/ ThumbnailDownloader.php - Works on a single queue item.
File
-
core/
lib/ Drupal/ Core/ Queue/ QueueWorkerInterface.php, line 44
Class
- QueueWorkerInterface
- Defines an interface for a QueueWorker plugin.
Namespace
Drupal\Core\QueueCode
public function processItem($data);
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.