abstract class PluginManagerBase in Plug 7
Base class for plugin managers.
Hierarchy
- class \Drupal\Component\Plugin\PluginManagerBase implements PluginManagerInterface uses DiscoveryTrait
Expanded class hierarchy of PluginManagerBase
1 file declares its use of PluginManagerBase
- DefaultPluginManager.php in lib/
Drupal/ Core/ Plugin/ DefaultPluginManager.php - Contains \Drupal\Core\Plugin\DefaultPluginManager.
File
- lib/
Drupal/ Component/ Plugin/ PluginManagerBase.php, line 16 - Contains \Drupal\Component\Plugin\PluginManagerBase.
Namespace
Drupal\Component\PluginView source
abstract class PluginManagerBase implements PluginManagerInterface {
use DiscoveryTrait;
/**
* The object that discovers plugins managed by this manager.
*
* @var \Drupal\Component\Plugin\Discovery\DiscoveryInterface
*/
protected $discovery;
/**
* The object that instantiates plugins managed by this manager.
*
* @var \Drupal\Component\Plugin\Factory\FactoryInterface
*/
protected $factory;
/**
* The object that returns the preconfigured plugin instance appropriate for a particular runtime condition.
*
* @var \Drupal\Component\Plugin\Mapper\MapperInterface
*/
protected $mapper;
/**
* Gets the plugin discovery.
*
* @return \Drupal\Component\Plugin\Discovery\DiscoveryInterface
*/
protected function getDiscovery() {
return $this->discovery;
}
/**
* Gets the plugin factory.
*
* @return \Drupal\Component\Plugin\Factory\FactoryInterface
*/
protected function getFactory() {
return $this->factory;
}
/**
* {@inheritdoc}
*/
public function getDefinition($plugin_id, $exception_on_invalid = TRUE) {
return $this
->getDiscovery()
->getDefinition($plugin_id, $exception_on_invalid);
}
/**
* {@inheritdoc}
*/
public function getDefinitions() {
return $this
->getDiscovery()
->getDefinitions();
}
/**
* {@inheritdoc}
*/
public function createInstance($plugin_id, array $configuration = array()) {
// If this PluginManager has fallback capabilities catch
// PluginNotFoundExceptions.
if ($this instanceof FallbackPluginManagerInterface) {
try {
return $this
->getFactory()
->createInstance($plugin_id, $configuration);
} catch (PluginNotFoundException $e) {
$fallback_id = $this
->getFallbackPluginId($plugin_id, $configuration);
return $this
->getFactory()
->createInstance($fallback_id, $configuration);
}
}
else {
return $this
->getFactory()
->createInstance($plugin_id, $configuration);
}
}
/**
* {@inheritdoc}
*/
public function getInstance(array $options) {
return $this->mapper
->getInstance($options);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DiscoveryTrait:: |
protected | function | Gets a specific plugin definition. | |
DiscoveryTrait:: |
public | function | ||
PluginManagerBase:: |
protected | property | The object that discovers plugins managed by this manager. | |
PluginManagerBase:: |
protected | property | The object that instantiates plugins managed by this manager. | |
PluginManagerBase:: |
protected | property | The object that returns the preconfigured plugin instance appropriate for a particular runtime condition. | |
PluginManagerBase:: |
public | function |
Creates a pre-configured instance of a plugin. Overrides FactoryInterface:: |
|
PluginManagerBase:: |
public | function |
Gets a specific plugin definition. Overrides DiscoveryTrait:: |
|
PluginManagerBase:: |
public | function |
Gets the definition of all plugins for this type. Overrides DiscoveryTrait:: |
|
PluginManagerBase:: |
protected | function | Gets the plugin discovery. | 1 |
PluginManagerBase:: |
protected | function | Gets the plugin factory. | 1 |
PluginManagerBase:: |
public | function |
Gets a preconfigured instance of a plugin. Overrides MapperInterface:: |