interface ContextAwarePluginInterface
Rules extension of ContextAwarePluginInterface.
Hierarchy
- interface \Drupal\Component\Plugin\PluginInspectionInterface
- interface \Drupal\Component\Plugin\ContextAwarePluginInterface extends \Drupal\Component\Plugin\PluginInspectionInterface
- interface \Drupal\Core\Plugin\ContextAwarePluginInterface extends \Drupal\Component\Plugin\ContextAwarePluginInterface
- interface \Drupal\rules\Context\ContextAwarePluginInterface extends \Drupal\Core\Plugin\ContextAwarePluginInterface
- interface \Drupal\Core\Plugin\ContextAwarePluginInterface extends \Drupal\Component\Plugin\ContextAwarePluginInterface
- interface \Drupal\Component\Plugin\ContextAwarePluginInterface extends \Drupal\Component\Plugin\PluginInspectionInterface
Expanded class hierarchy of ContextAwarePluginInterface
All classes that implement ContextAwarePluginInterface
2 files declare their use of ContextAwarePluginInterface
- RulesActionInterface.php in src/
Core/ RulesActionInterface.php - RulesConditionInterface.php in src/
Core/ RulesConditionInterface.php
File
-
src/
Context/ ContextAwarePluginInterface.php, line 10
Namespace
Drupal\rules\ContextView source
interface ContextAwarePluginInterface extends CoreContextAwarePluginInterface {
/**
* Refines used and provided context definitions based upon context values.
*
* When a plugin is configured half-way or even fully, some context values are
* already available upon which the definition of subsequent or provided
* context can be refined.
*
* Implement this method, when the plugin's context definitions need to be
* refined. When the selected data definitions should be refined, implement
* ::assertMetadata() instead.
*
* Note that context gets refined at configuration and execution time of the
* plugin.
*
* @param \Drupal\Core\TypedData\DataDefinitionInterface[] $selected_data
* An array of data definitions for context that is mapped using a data
* selector, keyed by context name.
*/
public function refineContextDefinitions(array $selected_data);
/**
* Asserts additional metadata for the selected data.
*
* Allows the plugin to assert additional metadata that is in place when the
* plugin has been successfully executed. A typical use-case would be
* asserting the node type for a "Node is of type" condition. By doing so,
* sub-sequent executed plugins are aware of the metadata and can build upon
* it.
*
* Implement this method, when the selected data definitions need to be
* refined. When the plugin's context definitions should be refined, implement
* ::refineContextDefinitions() instead.
*
* Note that metadata is only asserted on configuration time. The plugin has
* to ensure that the run-time data matches the asserted configuration if it
* has been executed successfully.
*
* @param \Drupal\Core\TypedData\DataDefinitionInterface[] $selected_data
* An array of data definitions for context that is mapped using a data
* selector, keyed by context name.
*
* @return \Drupal\Core\TypedData\DataDefinitionInterface[]
* An array of modified data definitions, keyed as the passed array. Note
* data definitions need to be cloned *before* they are modified, such that
* the changes do not propagate unintentionally.
*/
public function assertMetadata(array $selected_data);
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
ContextAwarePluginInterface::assertMetadata | public | function | Asserts additional metadata for the selected data. | 2 | |
ContextAwarePluginInterface::getContext | public | function | Gets a defined context. | 1 | |
ContextAwarePluginInterface::getContextDefinition | public | function | Gets a specific context definition of the plugin. | Overrides ContextAwarePluginInterface::getContextDefinition | |
ContextAwarePluginInterface::getContextDefinitions | public | function | Gets the context definitions of the plugin. | Overrides ContextAwarePluginInterface::getContextDefinitions | |
ContextAwarePluginInterface::getContextMapping | public | function | Gets a mapping of the expected assignment names to their context names. | ||
ContextAwarePluginInterface::getContexts | public | function | Gets the defined contexts. | 1 | |
ContextAwarePluginInterface::getContextValue | public | function | Gets the value for a defined context. | 1 | |
ContextAwarePluginInterface::getContextValues | public | function | Gets the values for all defined contexts. | 1 | |
ContextAwarePluginInterface::refineContextDefinitions | public | function | Refines used and provided context definitions based upon context values. | 2 | |
ContextAwarePluginInterface::setContext | public | function | Set a context on this plugin. | 2 | |
ContextAwarePluginInterface::setContextMapping | public | function | Sets a mapping of the expected assignment names to their context names. | ||
ContextAwarePluginInterface::setContextValue | public | function | Sets the value for a defined context. | 1 | |
ContextAwarePluginInterface::validateContexts | public | function | Validates the set values for the defined contexts. | 1 | |
PluginInspectionInterface::getPluginDefinition | public | function | Gets the definition of the plugin implementation. | 6 | |
PluginInspectionInterface::getPluginId | public | function | Gets the plugin_id of the plugin instance. | 2 |