You are here

public function FileStorage::deleteAll in Drupal 9

Same name in this branch
  1. 9 core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::deleteAll()
  2. 9 core/lib/Drupal/Component/PhpStorage/FileStorage.php \Drupal\Component\PhpStorage\FileStorage::deleteAll()
Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::deleteAll()

Deletes configuration objects whose names start with a given prefix.

Given the following configuration object names:

  • node.type.article
  • node.type.page

Passing the prefix 'node.type.' will delete the above configuration objects.

Parameters

string $prefix: (optional) The prefix to search for. If omitted, all configuration objects that exist will be deleted.

Return value

bool TRUE on success, FALSE otherwise.

Overrides StorageInterface::deleteAll

1 method overrides FileStorage::deleteAll()
InstallStorage::deleteAll in core/lib/Drupal/Core/Config/InstallStorage.php
Overrides Drupal\Core\Config\FileStorage::deleteAll().

File

core/lib/Drupal/Core/Config/FileStorage.php, line 241

Class

FileStorage
Defines the file storage.

Namespace

Drupal\Core\Config

Code

public function deleteAll($prefix = '') {
  $files = $this
    ->listAll($prefix);
  $success = !empty($files);
  foreach ($files as $name) {
    if (!$this
      ->delete($name) && $success) {
      $success = FALSE;
    }
  }
  if ($success && $this->collection != StorageInterface::DEFAULT_COLLECTION) {

    // Remove empty directories.
    if (!(new \FilesystemIterator($this
      ->getCollectionDirectory()))
      ->valid()) {
      $this
        ->getFileSystem()
        ->rmdir($this
        ->getCollectionDirectory());
    }
  }
  return $success;
}