You are here

interface ConfigurablePluginInterface in Search API 8

Describes a configurable Search API plugin.

Plugins which implement this interface which also want to add a plugin form should also implement \Drupal\Core\Plugin\PluginFormInterface.

Hierarchy

Expanded class hierarchy of ConfigurablePluginInterface

All classes that implement ConfigurablePluginInterface

See also

\Drupal\Core\Plugin\PluginFormInterface

\Drupal\search_api\Plugin\PluginFormTrait

1 file declares its use of ConfigurablePluginInterface
BackendInterface.php in src/Backend/BackendInterface.php

File

src/Plugin/ConfigurablePluginInterface.php, line 20

Namespace

Drupal\search_api\Plugin
View source
interface ConfigurablePluginInterface extends HideablePluginInterface, PluginInspectionInterface, DerivativeInspectionInterface, ConfigurableInterface, DependentPluginInterface, ContainerFactoryPluginInterface {

  /**
   * Returns the label for use on the administration pages.
   *
   * @return string
   *   The administration label.
   */
  public function label();

  /**
   * Returns the plugin's description.
   *
   * @return string
   *   A string describing the plugin. Might contain HTML and should be already
   *   sanitized for output.
   */
  public function getDescription();

  /**
   * Informs the plugin that some of its dependencies are being removed.
   *
   * The plugin should attempt to change its configuration in a way to remove
   * its dependency on those items. However, to avoid problems, it should (as
   * far as possible) not add any new dependencies in the process, since there
   * is no guarantee that those are not currently being removed, too.
   *
   * @param object[][] $dependencies
   *   An array of dependencies, keyed by dependency type ("module", "config",
   *   etc.) and dependency name.
   *
   * @return bool
   *   Whether the dependency was successfully removed from the plugin – that
   *   is, after the configuration changes that were made, none of the removed
   *   items are dependencies of this plugin anymore.
   */
  public function onDependencyRemoval(array $dependencies);

}

Members

Namesort descending Modifiers Type Description Overrides
ConfigurableInterface::defaultConfiguration public function Gets default configuration for this plugin. 11
ConfigurableInterface::getConfiguration public function Gets this plugin's configuration. 12
ConfigurableInterface::setConfiguration public function Sets the configuration for this plugin instance. 12
ConfigurablePluginInterface::getDescription public function Returns the plugin's description. 1
ConfigurablePluginInterface::label public function Returns the label for use on the administration pages. 1
ConfigurablePluginInterface::onDependencyRemoval public function Informs the plugin that some of its dependencies are being removed. 1
ContainerFactoryPluginInterface::create public static function Creates an instance of the plugin. 112
DependentPluginInterface::calculateDependencies public function Calculates dependencies for the configured plugin. 19
DerivativeInspectionInterface::getBaseId public function Gets the base_plugin_id of the plugin instance. 1
DerivativeInspectionInterface::getDerivativeId public function Gets the derivative_id of the plugin instance. 1
HideablePluginInterface::isHidden public function Determines whether this plugin should be hidden in the UI. 1
PluginInspectionInterface::getPluginDefinition public function Gets the definition of the plugin implementation. 4
PluginInspectionInterface::getPluginId public function Gets the plugin_id of the plugin instance. 2