PluginDefinitionInterface.php

Same filename 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.