class StaticDiscovery

Same name and namespace in other branches
  1. 11.x core/lib/Drupal/Component/Plugin/Discovery/StaticDiscovery.php \Drupal\Component\Plugin\Discovery\StaticDiscovery
  2. 10 core/lib/Drupal/Component/Plugin/Discovery/StaticDiscovery.php \Drupal\Component\Plugin\Discovery\StaticDiscovery

Allows plugin definitions to be manually registered.

Hierarchy

Expanded class hierarchy of StaticDiscovery

5 files declare their use of StaticDiscovery
DefaultsTestPluginManager.php in core/modules/system/tests/modules/plugin_test/src/Plugin/DefaultsTestPluginManager.php
MockBlockManager.php in core/modules/system/tests/modules/plugin_test/src/Plugin/MockBlockManager.php
StaticDiscoveryTest.php in core/tests/Drupal/KernelTests/Core/Plugin/Discovery/StaticDiscoveryTest.php
TestPluginManager.php in core/modules/system/tests/modules/plugin_test/src/Plugin/TestPluginManager.php
TestPluginManager.php in core/tests/Drupal/Tests/Core/Plugin/TestPluginManager.php

File

core/lib/Drupal/Component/Plugin/Discovery/StaticDiscovery.php, line 8

Namespace

Drupal\Component\Plugin\Discovery
View source
class StaticDiscovery implements DiscoveryInterface {
  use DiscoveryCachedTrait;
  
  /**
   * {@inheritdoc}
   */
  public function getDefinitions() {
    if (!$this->definitions) {
      $this->definitions = [];
    }
    return $this->definitions;
  }
  
  /**
   * Sets a plugin definition.
   */
  public function setDefinition($plugin, $definition) {
    $this->definitions[$plugin] = $definition;
  }
  
  /**
   * Deletes a plugin definition.
   */
  public function deleteDefinition($plugin) {
    unset($this->definitions[$plugin]);
  }

}

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