You are here

public function DatabaseStorage::write in Drupal 10

Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::write()
  2. 9 core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::write()

File

core/lib/Drupal/Core/Config/DatabaseStorage.php, line 120

Class

DatabaseStorage
Defines the Database storage.

Namespace

Drupal\Core\Config

Code

public function write($name, array $data) {
  $data = $this
    ->encode($data);
  try {
    return $this
      ->doWrite($name, $data);
  } catch (\Exception $e) {

    // If there was an exception, try to create the table.
    if ($this
      ->ensureTableExists()) {
      return $this
        ->doWrite($name, $data);
    }

    // Some other failure that we can not recover from.
    throw new StorageException($e
      ->getMessage(), 0, $e);
  }
}