class PluginBase

Same name in this branch
  1. main core/modules/views/src/Plugin/views/PluginBase.php \Drupal\views\Plugin\views\PluginBase
  2. main core/lib/Drupal/Component/Plugin/PluginBase.php \Drupal\Component\Plugin\PluginBase
Same name and namespace in other branches
  1. 11.x core/modules/views/src/Plugin/views/PluginBase.php \Drupal\views\Plugin\views\PluginBase
  2. 11.x core/lib/Drupal/Core/Plugin/PluginBase.php \Drupal\Core\Plugin\PluginBase
  3. 11.x core/lib/Drupal/Component/Plugin/PluginBase.php \Drupal\Component\Plugin\PluginBase
  4. 10 core/modules/views/src/Plugin/views/PluginBase.php \Drupal\views\Plugin\views\PluginBase
  5. 10 core/lib/Drupal/Core/Plugin/PluginBase.php \Drupal\Core\Plugin\PluginBase
  6. 10 core/lib/Drupal/Component/Plugin/PluginBase.php \Drupal\Component\Plugin\PluginBase
  7. 9 core/modules/views/src/Plugin/views/PluginBase.php \Drupal\views\Plugin\views\PluginBase
  8. 9 core/lib/Drupal/Core/Plugin/PluginBase.php \Drupal\Core\Plugin\PluginBase
  9. 9 core/lib/Drupal/Component/Plugin/PluginBase.php \Drupal\Component\Plugin\PluginBase
  10. 8.9.x core/modules/views/src/Plugin/views/PluginBase.php \Drupal\views\Plugin\views\PluginBase
  11. 8.9.x core/lib/Drupal/Core/Plugin/PluginBase.php \Drupal\Core\Plugin\PluginBase
  12. 8.9.x core/lib/Drupal/Component/Plugin/PluginBase.php \Drupal\Component\Plugin\PluginBase

Base class for plugins supporting metadata inspection and translation.

Hierarchy

Expanded class hierarchy of PluginBase

Related topics

38 files declare their use of PluginBase
ActionBase.php in core/lib/Drupal/Core/Action/ActionBase.php
BlockBase.php in core/lib/Drupal/Core/Block/BlockBase.php
Breakpoint.php in core/modules/breakpoint/src/Breakpoint.php
Broken.php in core/lib/Drupal/Core/Block/Plugin/Block/Broken.php
CKEditor5PluginDefault.php in core/modules/ckeditor5/src/Plugin/CKEditor5PluginDefault.php

... See full list

File

core/lib/Drupal/Core/Plugin/PluginBase.php, line 17

Namespace

Drupal\Core\Plugin
View source
abstract class PluginBase extends ComponentPluginBase {
  use AutowiredInstanceTrait;
  use StringTranslationTrait;
  use DependencySerializationTrait;
  use MessengerTrait;
  
  /**
   * Instantiates a new instance of the implementing class using autowiring.
   *
   * @param \Symfony\Component\DependencyInjection\ContainerInterface $container
   *   The container to pull out services used in the plugin.
   * @param array $configuration
   *   A configuration array containing information about the plugin instance.
   * @param string $plugin_id
   *   The plugin ID for the plugin instance.
   * @param mixed $plugin_definition
   *   The plugin implementation definition.
   *
   * @return static
   *
   * @see \Drupal\Core\Plugin\ContainerFactoryPluginInterface
   */
  public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
    return static::createInstanceAutowired($container, $configuration, $plugin_id, $plugin_definition);
  }

}

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