function DatabaseQueue::createItem
Same name in other branches
- 9 core/lib/Drupal/Core/Queue/DatabaseQueue.php \Drupal\Core\Queue\DatabaseQueue::createItem()
- 8.9.x core/lib/Drupal/Core/Queue/DatabaseQueue.php \Drupal\Core\Queue\DatabaseQueue::createItem()
- 10 core/lib/Drupal/Core/Queue/DatabaseQueue.php \Drupal\Core\Queue\DatabaseQueue::createItem()
Overrides QueueInterface::createItem
File
-
core/
lib/ Drupal/ Core/ Queue/ DatabaseQueue.php, line 53
Class
- DatabaseQueue
- Default queue implementation.
Namespace
Drupal\Core\QueueCode
public function createItem($data) {
$try_again = FALSE;
try {
$id = $this->doCreateItem($data);
} catch (\Exception $e) {
// If there was an exception, try to create the table.
if (!($try_again = $this->ensureTableExists())) {
// If the exception happened for other reason than the missing table,
// propagate the exception.
throw $e;
}
}
// Now that the table has been created, try again if necessary.
if ($try_again) {
$id = $this->doCreateItem($data);
}
return $id;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.