Defines a batch queue.
Stale items from failed batches are cleaned from the {queue} table on cron using the 'created' date.
Hierarchy
Functions & methods
| Name | Description |
|---|---|
| BatchQueue::claimItem | Overrides SystemQueue::claimItem(). Overrides SystemQueue::claimItem |
| BatchQueue::getAllItems | Retrieves all remaining items in the queue. |
| SystemQueue::createItem | |
| SystemQueue::createQueue | |
| SystemQueue::deleteItem | |
| SystemQueue::deleteQueue | |
| SystemQueue::numberOfItems | |
| SystemQueue::releaseItem | |
| SystemQueue::__construct |
Properties
| Name | Description |
|---|---|
| SystemQueue::$name | The name of the queue this instance is working with. |
File
- includes/
batch.queue.inc, line 19 - Queue handlers used by the Batch API.
View source
class BatchQueue extends SystemQueue {
/**
* Overrides SystemQueue::claimItem().
*
* Unlike SystemQueue::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) {
$item = db_query_range('SELECT data, item_id FROM {queue} q WHERE name = :name ORDER BY item_id ASC', 0, 1, array(':name' => $this->name))->fetchObject();
if ($item) {
$item->data = unserialize($item->data);
return $item;
}
return FALSE;
}
/**
* Retrieves all remaining items in the queue.
*
* This is specific to Batch API and is not part of the DrupalQueueInterface.
*/
public function getAllItems() {
$result = array();
$items = db_query('SELECT data FROM {queue} q WHERE name = :name ORDER BY item_id ASC', array(':name' => $this->name))->fetchAll();
foreach ($items as $item) {
$result[] = unserialize($item->data);
}
return $result;
}
}