You are here

class CachedDiscoveryClearer in Zircon Profile 8.0

Same name in this branch
  1. 8.0 core/lib/Drupal/Core/Plugin/CachedDiscoveryClearer.php \Drupal\Core\Plugin\CachedDiscoveryClearer
  2. 8.0 core/lib/Drupal/Core/ProxyClass/Plugin/CachedDiscoveryClearer.php \Drupal\Core\ProxyClass\Plugin\CachedDiscoveryClearer
Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Plugin/CachedDiscoveryClearer.php \Drupal\Core\Plugin\CachedDiscoveryClearer

Defines a class which is capable of clearing the cache on plugin managers.

Hierarchy

Expanded class hierarchy of CachedDiscoveryClearer

1 string reference to 'CachedDiscoveryClearer'
core.services.yml in core/core.services.yml
core/core.services.yml
1 service uses CachedDiscoveryClearer
plugin.cache_clearer in core/core.services.yml
Drupal\Core\Plugin\CachedDiscoveryClearer

File

core/lib/Drupal/Core/Plugin/CachedDiscoveryClearer.php, line 15
Contains \Drupal\Core\Plugin\CachedDiscoveryClearer.

Namespace

Drupal\Core\Plugin
View source
class CachedDiscoveryClearer implements CachedDiscoveryClearerInterface {

  /**
   * The stored discoveries.
   *
   * @var \Drupal\Component\Plugin\Discovery\CachedDiscoveryInterface[]
   */
  protected $cachedDiscoveries = array();

  /**
   * {@inheritdoc}
   */
  public function addCachedDiscovery(CachedDiscoveryInterface $cached_discovery) {
    $this->cachedDiscoveries[] = $cached_discovery;
  }

  /**
   * {@inheritdoc}
   */
  public function clearCachedDefinitions() {
    foreach ($this->cachedDiscoveries as $cached_discovery) {
      $cached_discovery
        ->clearCachedDefinitions();
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CachedDiscoveryClearer::$cachedDiscoveries protected property The stored discoveries.
CachedDiscoveryClearer::addCachedDiscovery public function Adds a plugin manager to the active list. Overrides CachedDiscoveryClearerInterface::addCachedDiscovery
CachedDiscoveryClearer::clearCachedDefinitions public function Clears the cache on all cached discoveries. Overrides CachedDiscoveryClearerInterface::clearCachedDefinitions