interface DerivativeInterface

Plugin interface for derivative plugin handling.

Hierarchy

Expanded class hierarchy of DerivativeInterface

All classes that implement DerivativeInterface

6 files declare their use of DerivativeInterface
DefaultFactory.php in drupal/core/lib/Drupal/Component/Plugin/Factory/DefaultFactory.php
Definition of Drupal\Component\Plugin\Factory\DefaultFactory.
DefaultWizardDeriver.php in drupal/core/modules/views/lib/Drupal/views/Plugin/Type/DefaultWizardDeriver.php
Definition of Drupal\views\Plugin\Type\DefaultWizardDeriver.
EntityDerivative.php in drupal/core/modules/rest/lib/Drupal/rest/Plugin/Derivative/EntityDerivative.php
Definition of Drupal\rest\Plugin\Derivative\EntityDerivative.
Layout.php in drupal/core/modules/layout/lib/Drupal/layout/Plugin/Derivative/Layout.php
Definition of Drupal\layout\Plugin\Derivative\Layout.
MockLayoutBlockDeriver.php in drupal/core/modules/system/tests/modules/plugin_test/lib/Drupal/plugin_test/Plugin/plugin_test/mock_block/MockLayoutBlockDeriver.php
Definition of Drupal\plugin_test\Plugin\plugin_test\mock_block\MockLayoutBlockDeriver.

... See full list

File

drupal/core/lib/Drupal/Component/Plugin/Derivative/DerivativeInterface.php, line 13
Definition of Drupal\Component\Plugin\Derivative\DerivativeInterface.

Namespace

Drupal\Component\Plugin\Derivative
View source
interface DerivativeInterface {

  /**
   * Returns the definition of a derivative plugin.
   *
   * @param string $derivative_id
   *   The derivative id. The id must uniquely identify the derivative within a
   *   given base plugin, but derivative ids can be reused across base plugins.
   * @param array $base_plugin_definition
   *   The definition array of the base plugin from which the derivative plugin
   *   is derived.
   *
   * @return array
   *   The full definition array of the derivative plugin, typically a merge of
   *   $base_plugin_definition with extra derivative-specific information. NULL
   *   if the derivative doesn't exist.
   */
  public function getDerivativeDefinition($derivative_id, array $base_plugin_definition);

  /**
   * Returns the definition of all derivatives of a base plugin.
   *
   * @param array $base_plugin_definition
   *   The definition array of the base plugin.
   * @return array
   *   An array of full derivative definitions keyed on derivative id.
   *
   * @see getDerivativeDefinition()
   */
  public function getDerivativeDefinitions(array $base_plugin_definition);

}

Members

Namesort descending Modifiers Type Description Overrides
DerivativeInterface::getDerivativeDefinition public function Returns the definition of a derivative plugin. 5
DerivativeInterface::getDerivativeDefinitions public function Returns the definition of all derivatives of a base plugin. 5