You are here

interface DiscoveryInterface in Drupal 10

Same name and namespace in other branches
  1. 8 core/lib/Drupal/Component/Plugin/Discovery/DiscoveryInterface.php \Drupal\Component\Plugin\Discovery\DiscoveryInterface
  2. 9 core/lib/Drupal/Component/Plugin/Discovery/DiscoveryInterface.php \Drupal\Component\Plugin\Discovery\DiscoveryInterface

An interface defining the minimum requirements of building a plugin discovery component.

Hierarchy

Expanded class hierarchy of DiscoveryInterface

All classes that implement DiscoveryInterface

Related topics

22 files declare their use of DiscoveryInterface
AnnotatedClassDiscovery.php in core/lib/Drupal/Component/Annotation/Plugin/Discovery/AnnotatedClassDiscovery.php
AnnotationBridgeDecorator.php in core/lib/Drupal/Component/Annotation/Plugin/Discovery/AnnotationBridgeDecorator.php
AnnotationBridgeDecoratorTest.php in core/tests/Drupal/Tests/Component/Annotation/Plugin/Discovery/AnnotationBridgeDecoratorTest.php
BlockManagerTest.php in core/tests/Drupal/Tests/Core/Block/BlockManagerTest.php
CKEditor5PluginManagerInterface.php in core/modules/ckeditor5/src/Plugin/CKEditor5PluginManagerInterface.php

... See full list

File

core/lib/Drupal/Component/Plugin/Discovery/DiscoveryInterface.php, line 11

Namespace

Drupal\Component\Plugin\Discovery
View source
interface DiscoveryInterface {

  /**
   * Gets a specific plugin definition.
   *
   * @param string $plugin_id
   *   A plugin id.
   * @param bool $exception_on_invalid
   *   (optional) If TRUE, an invalid plugin ID will throw an exception.
   *
   * @return mixed
   *   A plugin definition, or NULL if the plugin ID is invalid and
   *   $exception_on_invalid is FALSE.
   *
   * @throws \Drupal\Component\Plugin\Exception\PluginNotFoundException
   *   Thrown if $plugin_id is invalid and $exception_on_invalid is TRUE.
   */
  public function getDefinition($plugin_id, $exception_on_invalid = TRUE);

  /**
   * Gets the definition of all plugins for this type.
   *
   * @return mixed[]
   *   An array of plugin definitions (empty array if no definitions were
   *   found). Keys are plugin IDs.
   *
   * @see \Drupal\Core\Plugin\FilteredPluginManagerInterface::getFilteredDefinitions()
   */
  public function getDefinitions();

  /**
   * Indicates if a specific plugin definition exists.
   *
   * @param string $plugin_id
   *   A plugin ID.
   *
   * @return bool
   *   TRUE if the definition exists, FALSE otherwise.
   */
  public function hasDefinition($plugin_id);

}

Members

Namesort descending Modifiers Type Description Overrides
DiscoveryInterface::getDefinition public function Gets a specific plugin definition. 4
DiscoveryInterface::getDefinitions public function Gets the definition of all plugins for this type. 3
DiscoveryInterface::hasDefinition public function Indicates if a specific plugin definition exists. 1