class NullBackend

Same name in other branches
  1. 9 core/lib/Drupal/Core/Cache/NullBackend.php \Drupal\Core\Cache\NullBackend
  2. 8.9.x core/lib/Drupal/Core/Cache/NullBackend.php \Drupal\Core\Cache\NullBackend
  3. 11.x core/lib/Drupal/Core/Cache/NullBackend.php \Drupal\Core\Cache\NullBackend

Defines a stub cache implementation.

The stub implementation is needed when database access is not yet available. Because Drupal's caching system never requires that cached data be present, these stub functions can short-circuit the process and sidestep the need for any persistent storage. Using this cache implementation during normal operations would have a negative impact on performance.

This also can be used for testing purposes.

Hierarchy

Expanded class hierarchy of NullBackend

Related topics

16 files declare their use of NullBackend
CachedStorageTest.php in core/tests/Drupal/Tests/Core/Config/CachedStorageTest.php
CheckpointStorageTest.php in core/tests/Drupal/Tests/Core/Config/Checkpoint/CheckpointStorageTest.php
ContextDefinitionIsSatisfiedTest.php in core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionIsSatisfiedTest.php
ContextHandlerTest.php in core/tests/Drupal/Tests/Core/Plugin/ContextHandlerTest.php
Database.php in core/lib/Drupal/Core/Database/Database.php

... See full list

File

core/lib/Drupal/Core/Cache/NullBackend.php, line 18

Namespace

Drupal\Core\Cache
View source
class NullBackend implements CacheBackendInterface {
    
    /**
     * Constructs a NullBackend object.
     *
     * @param string $bin
     *   The cache bin for which the object is created.
     */
    public function __construct($bin) {
    }
    
    /**
     * {@inheritdoc}
     */
    public function get($cid, $allow_invalid = FALSE) {
        return FALSE;
    }
    
    /**
     * {@inheritdoc}
     */
    public function getMultiple(&$cids, $allow_invalid = FALSE) {
        return [];
    }
    
    /**
     * {@inheritdoc}
     */
    public function set($cid, $data, $expire = Cache::PERMANENT, array $tags = []) {
    }
    
    /**
     * {@inheritdoc}
     */
    public function setMultiple(array $items = []) {
    }
    
    /**
     * {@inheritdoc}
     */
    public function delete($cid) {
    }
    
    /**
     * {@inheritdoc}
     */
    public function deleteMultiple(array $cids) {
    }
    
    /**
     * {@inheritdoc}
     */
    public function deleteAll() {
    }
    
    /**
     * {@inheritdoc}
     */
    public function invalidate($cid) {
    }
    
    /**
     * {@inheritdoc}
     */
    public function invalidateMultiple(array $cids) {
    }
    
    /**
     * {@inheritdoc}
     */
    public function invalidateAll() {
    }
    
    /**
     * {@inheritdoc}
     */
    public function garbageCollection() {
    }
    
    /**
     * {@inheritdoc}
     */
    public function removeBin() {
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
CacheBackendInterface::CACHE_PERMANENT constant Indicates that the item should never be removed unless explicitly deleted.
NullBackend::delete public function Overrides CacheBackendInterface::delete 1
NullBackend::deleteAll public function Overrides CacheBackendInterface::deleteAll 1
NullBackend::deleteMultiple public function Overrides CacheBackendInterface::deleteMultiple 1
NullBackend::garbageCollection public function Overrides CacheBackendInterface::garbageCollection
NullBackend::get public function Overrides CacheBackendInterface::get
NullBackend::getMultiple public function Overrides CacheBackendInterface::getMultiple
NullBackend::invalidate public function Overrides CacheBackendInterface::invalidate
NullBackend::invalidateAll public function Overrides CacheBackendInterface::invalidateAll
NullBackend::invalidateMultiple public function Overrides CacheBackendInterface::invalidateMultiple
NullBackend::removeBin public function Overrides CacheBackendInterface::removeBin
NullBackend::set public function Overrides CacheBackendInterface::set
NullBackend::setMultiple public function Overrides CacheBackendInterface::setMultiple
NullBackend::__construct public function Constructs a NullBackend object. 1

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