3 namespace Drupal\Core\Queue;
6 * Defines a batch queue handler used by the Batch API for non-progressive
10 * - Ensures FIFO ordering.
11 * - Allows an item to be repeatedly claimed until it is actually deleted (no
12 * notion of lease time or 'expire' date), to allow multipass operations.
16 class BatchMemory extends Memory {
19 * Overrides \Drupal\Core\Queue\Memory::claimItem().
21 * Unlike \Drupal\Core\Queue\Memory::claimItem(), this method provides a
22 * default lease time of 0 (no expiration) instead of 30. This allows the item
23 * to be claimed repeatedly until it is deleted.
25 public function claimItem($lease_time = 0) {
26 if (!empty($this->queue)) {
28 return current($this->queue);
34 * Retrieves all remaining items in the queue.
36 * This is specific to Batch API and is not part of the
37 * \Drupal\Core\Queue\QueueInterface.
40 * An array of queue items.
42 public function getAllItems() {
44 foreach ($this->queue as $item) {
45 $result[] = $item->data;