class Condition

Extension of the Condition annotation class.

This class adds a configuration access parameter to the Condition annotation.

Hierarchy

Expanded class hierarchy of Condition

13 string references to 'Condition'
AnnotationProcessingTest::provideRulesPlugins in tests/src/Unit/Integration/Engine/AnnotationProcessingTest.php
Provider for plugins to test.
AnnotationProcessingTest::testCheckConfiguration in tests/src/Unit/Integration/Engine/AnnotationProcessingTest.php
Tests if our ContextDefinition annotations are correctly processed.
ConditionForm::form in src/Form/Expression/ConditionForm.php
Adds elements specific to the expression to the form.
ConfigureAndExecuteTest::testConfigureAndExecute in tests/src/Functional/ConfigureAndExecuteTest.php
Tests creation of a rule and then triggering its execution.
RulesComponentListBuilderTest::testCancelExpressionInComponent in tests/src/Functional/RulesComponentListBuilderTest.php
Tests that cancelling an expression from a component works.

... See full list

23 classes are annotated with Condition
DataComparison in src/Plugin/Condition/DataComparison.php
Provides a 'Data comparison' condition.
DataIsEmpty in src/Plugin/Condition/DataIsEmpty.php
Provides a 'Data value is empty' condition.
DataListContains in src/Plugin/Condition/DataListContains.php
Provides a 'List contains' condition.
DataListCountIs in src/Plugin/Condition/DataListCountIs.php
Provides a 'List count comparison' condition.
EntityHasField in src/Plugin/Condition/EntityHasField.php
Provides a 'Entity has field' condition.

... See full list

File

src/Core/Annotation/Condition.php, line 15

Namespace

Drupal\rules\Core\Annotation
View source
class Condition extends CoreConditionAnnotation {
  
  /**
   * The permissions allowed to access the configuration UI for this plugin.
   *
   * @var string[]
   *   Array of permission strings as declared in a *.permissions.yml file. If
   *   any one of these permissions apply for the relevant user, we allow
   *   access.
   *
   *   The key should be used as follows. Note that we add a space between "@"
   *   and "Condition", since we do not want to trigger the annotation parser
   *   here; you should remove that space in your actual annotation:
   *
   *   @ Condition(
   *     id = "my_module_user_is_blocked",
   *     label = @Translation("My User is blocked"),
   *     category = @Translation("User"),
   *     context_definitions = {
   *       "user" = @ContextDefinition("entity:user",
   *         label = @Translation("User")
   *      ),
   *      configure_permissions = {
   *        "administer users",
   *        "block users"
   *      }
   *   }
   * )
   */
  public $configure_permissions;

}

Members

Title Sort descending Modifiers Object type Summary
Condition::$configure_permissions public property The permissions allowed to access the configuration UI for this plugin.