function BatchStorage::getId

Same name in this branch
  1. 10 core/lib/Drupal/Core/ProxyClass/Batch/BatchStorage.php \Drupal\Core\ProxyClass\Batch\BatchStorage::getId()
Same name and namespace in other branches
  1. 11.x core/lib/Drupal/Core/ProxyClass/Batch/BatchStorage.php \Drupal\Core\ProxyClass\Batch\BatchStorage::getId()
  2. 11.x core/lib/Drupal/Core/Batch/BatchStorage.php \Drupal\Core\Batch\BatchStorage::getId()

Returns a new batch id.

Return value

int A batch id.

File

core/lib/Drupal/Core/Batch/BatchStorage.php, line 155

Class

BatchStorage

Namespace

Drupal\Core\Batch

Code

public function getId() : int {
  $try_again = FALSE;
  try {
    // The batch table might not yet exist.
    return $this->doInsertBatchRecord();
  } 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) {
    return $this->doInsertBatchRecord();
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.