PluginDefinitionInterface.php

Same filename and directory in other branches
  1. 9 core/lib/Drupal/Component/Plugin/Definition/PluginDefinitionInterface.php
  2. 8.9.x core/lib/Drupal/Component/Plugin/Definition/PluginDefinitionInterface.php
  3. 11.x core/lib/Drupal/Component/Plugin/Definition/PluginDefinitionInterface.php

Namespace

Drupal\Component\Plugin\Definition

File

core/lib/Drupal/Component/Plugin/Definition/PluginDefinitionInterface.php

View source
<?php

namespace Drupal\Component\Plugin\Definition;


/**
 * Defines a plugin definition.
 *
 * Object-based plugin definitions MUST implement this interface.
 *
 * @ingroup Plugin
 */
interface PluginDefinitionInterface {
  
  /**
   * Gets the unique identifier of the plugin.
   *
   * @return string
   *   The unique identifier of the plugin.
   */
  public function id();
  
  /**
   * Sets the class.
   *
   * @param string $class
   *   A fully qualified class name.
   *
   * @return static
   *
   * @throws \InvalidArgumentException
   *   If the class is invalid.
   */
  public function setClass($class);
  
  /**
   * Gets the class.
   *
   * @return string
   *   A fully qualified class name.
   */
  public function getClass();
  
  /**
   * Gets the plugin provider.
   *
   * The provider is the name of the module that provides the plugin, or "core',
   * or "component".
   *
   * @return string
   *   The provider.
   */
  public function getProvider();

}

Interfaces

Title Deprecated Summary
PluginDefinitionInterface Defines a plugin definition.

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