You are here

interface DependentPluginInterface in Drupal 10

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

Provides an interface for a plugin that has dependencies.

Hierarchy

Expanded class hierarchy of DependentPluginInterface

All classes that implement DependentPluginInterface

Related topics

24 files declare their use of DependentPluginInterface
BlockPluginInterface.php in core/lib/Drupal/Core/Block/BlockPluginInterface.php
ConditionInterface.php in core/lib/Drupal/Core/Condition/ConditionInterface.php
Config.php in core/modules/migrate/src/Plugin/migrate/destination/Config.php
ConfigurableActionBase.php in core/lib/Drupal/Core/Action/ConfigurableActionBase.php
ConfigurableSearchPluginInterface.php in core/modules/search/src/Plugin/ConfigurableSearchPluginInterface.php

... See full list

File

core/lib/Drupal/Component/Plugin/DependentPluginInterface.php, line 10

Namespace

Drupal\Component\Plugin
View source
interface DependentPluginInterface {

  /**
   * Calculates dependencies for the configured plugin.
   *
   * Dependencies are saved in the plugin's configuration entity and are used to
   * determine configuration synchronization order. For example, if the plugin
   * integrates with specific user roles, this method should return an array of
   * dependencies listing the specified roles.
   *
   * @return array
   *   An array of dependencies grouped by type (config, content, module,
   *   theme). For example:
   *   @code
   *   array(
   *     'config' => array('user.role.anonymous', 'user.role.authenticated'),
   *     'content' => array('node:article:f0a189e6-55fb-47fb-8005-5bef81c44d6d'),
   *     'module' => array('node', 'user'),
   *     'theme' => array('seven'),
   *   );
   *   @endcode
   *
   * @see \Drupal\Core\Config\Entity\ConfigDependencyManager
   * @see \Drupal\Core\Entity\EntityInterface::getConfigDependencyName()
   */
  public function calculateDependencies();

}

Members