An interface for condition plugins.
Condition plugins are context-aware and configurable. They support the following keys in their plugin definitions:
- context: An array of context definitions, keyed by context name. Each context definition is a typed data definition describing the context. Check the typed data definition docs for details.
- configuration: An array of configuration option definitions, keyed by option name. Each option definition is a typed data definition describing the configuration option. Check the typed data definition docs for details.
@todo Replace the dependency on \Drupal\Core\Form\FormInterface with a new interface from https://www.drupal.org/node/2006248. @todo WARNING: The condition API is going to receive some additions before release. The following additions are likely to happen:
- The way configuration is handled and configuration forms are built is likely to change in order for the plugin to be of use for Rules.
- Conditions will receive a data processing API that allows for token replacements to happen outside of the plugin implementations, see https://www.drupal.org/node/2347023.
- Conditions will have to implement access control for checking who is allowed to configure or perform the action at https://www.drupal.org/node/2172017.
Hierarchy
- interface \Drupal\Core\Executable\ExecutableInterface; interface \Drupal\Core\Plugin\PluginFormInterface; interface \Drupal\Component\Plugin\ConfigurablePluginInterface; interface \Drupal\Component\Plugin\PluginInspectionInterface; interface \Drupal\Core\Cache\CacheableDependencyInterface
- interface \Drupal\Core\Condition\ConditionInterface
See also
\Drupal\Core\TypedData\TypedDataManager::create()
\Drupal\Core\Executable\ExecutableInterface
\Drupal\Core\Condition\ConditionManager
\Drupal\Core\Condition\Annotation\Condition
\Drupal\Core\Condition\ConditionPluginBase
Related topics
- Plugin API
- Using the Plugin API
File
- core/lib/Drupal/Core/Condition/ConditionInterface.php, line 45
Namespace
Drupal\Core\Condition
Members
Name | Modifiers | Type | Description |
---|---|---|---|
CacheableDependencyInterface::getCacheContexts | public | function | The cache contexts associated with this object. |
CacheableDependencyInterface::getCacheMaxAge | public | function | The maximum age for which this object may be cached. |
CacheableDependencyInterface::getCacheTags | public | function | The cache tags associated with this object. |
ConditionInterface::evaluate | public | function | Evaluates the condition and returns TRUE or FALSE accordingly. |
ConditionInterface::isNegated | public | function | Determines whether condition result will be negated. |
ConditionInterface::setExecutableManager | public | function | Sets the executable manager class. |
ConditionInterface::summary | public | function | Provides a human readable summary of the condition's configuration. |
ConfigurablePluginInterface::defaultConfiguration | public | function | Gets default configuration for this plugin. |
ConfigurablePluginInterface::getConfiguration | public | function | Gets this plugin's configuration. |
ConfigurablePluginInterface::setConfiguration | public | function | Sets the configuration for this plugin instance. |
DependentPluginInterface::calculateDependencies | public | function | Calculates dependencies for the configured plugin. |
ExecutableInterface::execute | public | function | Executes the plugin. |
PluginFormInterface::buildConfigurationForm | public | function | Form constructor. |
PluginFormInterface::submitConfigurationForm | public | function | Form submission handler. |
PluginFormInterface::validateConfigurationForm | public | function | Form validation handler. |
PluginInspectionInterface::getPluginDefinition | public | function | Gets the definition of the plugin implementation. |
PluginInspectionInterface::getPluginId | public | function | Gets the plugin_id of the plugin instance. |
Please login to continue.