class RecipientTypePluginCollection in Workbench Email 8
Same name and namespace in other branches
- 2.x src/RecipientTypePluginCollection.php \Drupal\workbench_email\RecipientTypePluginCollection
A collection of recipient types.
Hierarchy
- class \Drupal\Component\Plugin\LazyPluginCollection implements \Drupal\Component\Plugin\IteratorAggregate, \Drupal\Component\Plugin\Countable
- class \Drupal\Core\Plugin\DefaultLazyPluginCollection uses DependencySerializationTrait
- class \Drupal\workbench_email\RecipientTypePluginCollection
- class \Drupal\Core\Plugin\DefaultLazyPluginCollection uses DependencySerializationTrait
Expanded class hierarchy of RecipientTypePluginCollection
1 file declares its use of RecipientTypePluginCollection
- Template.php in src/
Entity/ Template.php
File
- src/
RecipientTypePluginCollection.php, line 11
Namespace
Drupal\workbench_emailView source
class RecipientTypePluginCollection extends DefaultLazyPluginCollection {
/**
* All possible recipient type plugin IDs.
*
* @var array
*/
protected $definitions;
/**
* {@inheritdoc}
*
* @return \Drupal\workbench_email\Plugin\RecipientTypeInterface
* The recipient type.
*/
public function &get($instance_id) {
return parent::get($instance_id);
}
/**
* Retrieves plugin definitions and creates an instance for each.
*/
public function getAll() {
// Retrieve all available behavior plugin definitions.
if (!$this->definitions) {
$this->definitions = $this->manager
->getDefinitions();
}
// Ensure that there is an instance of all available behavior plugins.
foreach ($this->definitions as $plugin_id => $definition) {
if (!isset($this->pluginInstances[$plugin_id])) {
$this
->initializePlugin($plugin_id);
}
}
return $this->pluginInstances;
}
/**
* {@inheritdoc}
*/
protected function initializePlugin($instance_id) {
$configuration = $this->manager
->getDefinition($instance_id);
// Merge the actual configuration into the default configuration.
if (isset($this->configurations[$instance_id])) {
$configuration = NestedArray::mergeDeep($configuration, $this->configurations[$instance_id]);
}
$this->configurations[$instance_id] = $configuration;
parent::initializePlugin($instance_id);
}
/**
* {@inheritdoc}
*/
public function sort() {
$this
->getAll();
return parent::sort();
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DefaultLazyPluginCollection:: |
protected | property | The initial configuration for each plugin in the collection. | |
DefaultLazyPluginCollection:: |
protected | property | The manager used to instantiate the plugins. | |
DefaultLazyPluginCollection:: |
protected | property | The original order of the instances. | |
DefaultLazyPluginCollection:: |
protected | property | The key within the plugin configuration that contains the plugin ID. | 3 |
DefaultLazyPluginCollection:: |
public | function |
Adds an instance ID to the available instance IDs. Overrides LazyPluginCollection:: |
|
DefaultLazyPluginCollection:: |
public | function |
Gets the current configuration of all plugins in this collection. Overrides LazyPluginCollection:: |
2 |
DefaultLazyPluginCollection:: |
public | function |
Removes an instance ID. Overrides LazyPluginCollection:: |
|
DefaultLazyPluginCollection:: |
public | function |
Sets the configuration for all plugins in this collection. Overrides LazyPluginCollection:: |
|
DefaultLazyPluginCollection:: |
public | function | Updates the configuration for a plugin instance. | |
DefaultLazyPluginCollection:: |
public | function | Provides uasort() callback to sort plugins. | 2 |
DefaultLazyPluginCollection:: |
public | function | Constructs a new DefaultLazyPluginCollection object. | 1 |
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
LazyPluginCollection:: |
protected | property | Stores the IDs of all potential plugin instances. | |
LazyPluginCollection:: |
protected | property | Stores all instantiated plugins. | |
LazyPluginCollection:: |
public | function | Clears all instantiated plugins. | |
LazyPluginCollection:: |
public | function | ||
LazyPluginCollection:: |
public | function | Gets all instance IDs. | |
LazyPluginCollection:: |
public | function | ||
LazyPluginCollection:: |
public | function | Determines if a plugin instance exists. | |
LazyPluginCollection:: |
public | function | Removes an initialized plugin. | |
LazyPluginCollection:: |
public | function | Stores an initialized plugin. | |
RecipientTypePluginCollection:: |
protected | property | All possible recipient type plugin IDs. | |
RecipientTypePluginCollection:: |
public | function |
Overrides LazyPluginCollection:: |
|
RecipientTypePluginCollection:: |
public | function | Retrieves plugin definitions and creates an instance for each. | |
RecipientTypePluginCollection:: |
protected | function |
Initializes and stores a plugin. Overrides DefaultLazyPluginCollection:: |
|
RecipientTypePluginCollection:: |
public | function |
Sorts all plugin instances in this collection. Overrides DefaultLazyPluginCollection:: |