class PluginConfiguration in Plugin 8.2
Provides a plugin configuration data type.
Plugin annotation
@DataType(
id = "plugin_configuration",
label = @Translation("Plugin configuration")
)
Hierarchy
- class \Drupal\Core\TypedData\TypedData implements PluginInspectionInterface, TypedDataInterface uses DependencySerializationTrait, StringTranslationTrait, TypedDataTrait
- class \Drupal\plugin\Plugin\DataType\PluginConfiguration
Expanded class hierarchy of PluginConfiguration
File
- src/
Plugin/ DataType/ PluginConfiguration.php, line 19
Namespace
Drupal\plugin\Plugin\DataTypeView source
class PluginConfiguration extends TypedData {
/**
* The parent typed data object.
*
* @var \Drupal\plugin\Plugin\Field\FieldType\PluginCollectionItemInterface
*/
protected $parent;
/**
* The plugin configuration.
*
* @var mixed[]
*/
protected $value;
/**
* Constructs a new instance.
*
* @param \Drupal\Core\TypedData\DataDefinitionInterface $definition
* The data definition.
* @param string $name
* The name of the created property.
* @param \Drupal\plugin\Plugin\Field\FieldType\PluginCollectionItemInterface $parent
* The parent object of the data property.
*/
public function __construct(DataDefinitionInterface $definition, $name, PluginCollectionItemInterface $parent) {
parent::__construct($definition, $name, $parent);
}
/**
* {@inheritdoc}
*/
public function setValue($value, $notify = TRUE) {
$value = (array) $value;
$plugin_instance = $this->parent
->getContainedPluginInstance();
if ($plugin_instance instanceof ConfigurableInterface || $plugin_instance instanceof ConfigurablePluginInterface) {
$plugin_instance
->setConfiguration($value);
}
$this->parent
->onChange($this
->getName());
}
/**
* {@inheritdoc}
*/
public function getValue() {
$plugin_instance = $this->parent
->getContainedPluginInstance();
if ($plugin_instance instanceof ConfigurableInterface || $plugin_instance instanceof ConfigurablePluginInterface) {
return $plugin_instance
->getConfiguration();
}
return [];
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
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 | |
PluginConfiguration:: |
protected | property |
The parent typed data object. Overrides TypedData:: |
|
PluginConfiguration:: |
protected | property | The plugin configuration. | |
PluginConfiguration:: |
public | function |
Gets the data value. Overrides TypedData:: |
|
PluginConfiguration:: |
public | function |
Sets the data value. Overrides TypedData:: |
|
PluginConfiguration:: |
public | function |
Constructs a new instance. Overrides TypedData:: |
|
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
TypedData:: |
protected | property | The data definition. | 1 |
TypedData:: |
protected | property | The property name. | |
TypedData:: |
public | function |
Applies the default value. Overrides TypedDataInterface:: |
3 |
TypedData:: |
public static | function |
Constructs a TypedData object given its definition and context. Overrides TypedDataInterface:: |
|
TypedData:: |
public | function |
Gets a list of validation constraints. Overrides TypedDataInterface:: |
9 |
TypedData:: |
public | function |
Gets the data definition. Overrides TypedDataInterface:: |
|
TypedData:: |
public | function |
Returns the name of a property or item. Overrides TypedDataInterface:: |
|
TypedData:: |
public | function |
Returns the parent data structure; i.e. either complex data or a list. Overrides TypedDataInterface:: |
|
TypedData:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
|
TypedData:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
TypedData:: |
public | function |
Returns the property path of the data. Overrides TypedDataInterface:: |
|
TypedData:: |
public | function |
Returns the root of the typed data tree. Overrides TypedDataInterface:: |
|
TypedData:: |
public | function |
Returns a string representation of the data. Overrides TypedDataInterface:: |
6 |
TypedData:: |
public | function |
Sets the context of a property or item via a context aware parent. Overrides TypedDataInterface:: |
|
TypedData:: |
public | function |
Validates the currently set data value. Overrides TypedDataInterface:: |
|
TypedDataTrait:: |
protected | property | The typed data manager used for creating the data types. | |
TypedDataTrait:: |
public | function | Gets the typed data manager. | 2 |
TypedDataTrait:: |
public | function | Sets the typed data manager. | 2 |