class StorageBase

Same name and namespace in other branches
  1. 11.x core/lib/Drupal/Core/KeyValueStore/StorageBase.php \Drupal\Core\KeyValueStore\StorageBase
  2. 10 core/lib/Drupal/Core/KeyValueStore/StorageBase.php \Drupal\Core\KeyValueStore\StorageBase
  3. 8.9.x core/lib/Drupal/Core/KeyValueStore/StorageBase.php \Drupal\Core\KeyValueStore\StorageBase

Provides a base class for key/value storage implementations.

Hierarchy

Expanded class hierarchy of StorageBase

File

core/lib/Drupal/Core/KeyValueStore/StorageBase.php, line 8

Namespace

Drupal\Core\KeyValueStore
View source
abstract class StorageBase implements KeyValueStoreInterface {
  
  /**
   * The name of the collection holding key and value pairs.
   *
   * @var string
   */
  protected $collection;
  
  /**
   * {@inheritdoc}
   */
  public function __construct($collection) {
    $this->collection = $collection;
  }
  
  /**
   * {@inheritdoc}
   */
  public function getCollectionName() {
    return $this->collection;
  }
  
  /**
   * {@inheritdoc}
   */
  public function get($key, $default = NULL) {
    $values = $this->getMultiple([
      $key,
    ]);
    return $values[$key] ?? $default;
  }
  
  /**
   * {@inheritdoc}
   */
  public function setMultiple(array $data) {
    foreach ($data as $key => $value) {
      $this->set($key, $value);
    }
  }
  
  /**
   * {@inheritdoc}
   */
  public function delete($key) {
    $this->deleteMultiple([
      $key,
    ]);
  }

}

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