Batch queue implementation.
Stale items from failed batches are cleaned from the {queue} table on cron using the 'created' date.
| Name | Description |
|---|---|
| BatchQueue::claimItem | Overrides SystemQueue::claimItem |
| BatchQueue::getAllItems | Retrieve all remaining items in the queue. |
| SystemQueue::createItem | |
| SystemQueue::createQueue | |
| SystemQueue::deleteItem | |
| SystemQueue::deleteQueue | |
| SystemQueue::numberOfItems | |
| SystemQueue::releaseItem | |
| SystemQueue::__construct |
| Name | Description |
|---|---|
| SystemQueue::$name | The name of the queue this instance is working with. |
drupal/
<?php
class BatchQueue extends SystemQueue {
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;
}
/**
* Retrieve 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;
}
}
?>