class BatchMemory
Same name in other branches
- 9 core/lib/Drupal/Core/Queue/BatchMemory.php \Drupal\Core\Queue\BatchMemory
- 8.9.x core/lib/Drupal/Core/Queue/BatchMemory.php \Drupal\Core\Queue\BatchMemory
- 11.x core/lib/Drupal/Core/Queue/BatchMemory.php \Drupal\Core\Queue\BatchMemory
Defines a batch queue handler.
Used by the Batch API for non-progressive batches.
This implementation:
- Ensures FIFO ordering.
- Allows an item to be repeatedly claimed until it is actually deleted (no notion of lease time or 'expire' date), to allow multipass operations.
Hierarchy
- class \Drupal\Core\Queue\Memory implements \Drupal\Core\Queue\QueueInterface
- class \Drupal\Core\Queue\BatchMemory extends \Drupal\Core\Queue\Memory
Expanded class hierarchy of BatchMemory
Related topics
File
-
core/
lib/ Drupal/ Core/ Queue/ BatchMemory.php, line 17
Namespace
Drupal\Core\QueueView source
class BatchMemory extends Memory {
/**
* Overrides \Drupal\Core\Queue\Memory::claimItem().
*
* Unlike \Drupal\Core\Queue\Memory::claimItem(), this method provides a
* default lease time of 0 (no expiration) instead of 30. This allows the item
* to be claimed repeatedly until it is deleted.
*/
public function claimItem($lease_time = 0) {
if (!empty($this->queue)) {
reset($this->queue);
return current($this->queue);
}
return FALSE;
}
/**
* Retrieves all remaining items in the queue.
*
* This is specific to Batch API and is not part of the
* \Drupal\Core\Queue\QueueInterface.
*
* @return array
* An array of queue items.
*/
public function getAllItems() {
$result = [];
foreach ($this->queue as $item) {
$result[] = $item->data;
}
return $result;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title |
---|---|---|---|---|
BatchMemory::claimItem | public | function | Overrides \Drupal\Core\Queue\Memory::claimItem(). | Overrides Memory::claimItem |
BatchMemory::getAllItems | public | function | Retrieves all remaining items in the queue. | |
Memory::$idSequence | protected | property | Counter for item ids. | |
Memory::$queue | protected | property | The queue data. | |
Memory::createItem | public | function | Adds a queue item and store it directly to the queue. | Overrides QueueInterface::createItem |
Memory::createQueue | public | function | Creates a queue. | Overrides QueueInterface::createQueue |
Memory::deleteItem | public | function | Deletes a finished item from the queue. | Overrides QueueInterface::deleteItem |
Memory::deleteQueue | public | function | Deletes a queue and every item in the queue. | Overrides QueueInterface::deleteQueue |
Memory::numberOfItems | public | function | Retrieves the number of items in the queue. | Overrides QueueInterface::numberOfItems |
Memory::releaseItem | public | function | Releases an item that the worker could not process. | Overrides QueueInterface::releaseItem |
Memory::__construct | public | function | Constructs a Memory object. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.