Variables

Dans le langage de règle, certaines variables sont utilisées pour stocker des informations relatives aux événements sur différentes occurrences d'événement ou règles. Ces informations sont ensuite accessibles au moyen d'expressions dans les règles. Certains types de variables sont définis par le programme d'écriture de règle, tandis que d'autres sont fournis par la technologie ACT. Certains types sont accessibles directement dans une expression, tandis que d'autres le sont uniquement par le biais de méthodes fournies par la technologie ACT.

Variables définies dans l'élément <variable> et accessibles par le biais de méthodes

Vous pouvez définir une variable dans l'élément <variable> pour une règle, un bloc de règles ou un jeu de règles. Vous pouvez accéder à cette variable dans une expression en appliquant l'une des méthodes suivantes :
  • la méthode getVariable() ou l'une des méthodes getjavatypeVariable()
  • la méthode setVariable() ou l'une des méthodes setjavatypeVariable()
Par exemple, si vous définissez la variable rule_writer_variable dans l'élément <variable> pour une règle, vous pouvez accéder à cette variable au moyen du code suivant :
int sample_variable = act_lib.getIntVariable("rule_writer_variable");

Variables fournies par la technologie ACT et accessibles directement dans une expression

Les variables suivantes sont fournies par la technologie ACT. Vous pouvez utiliser ces variables en ligne dans une expression.
  • act_event
  • act_eventList
  • act_lib
Par exemple, avec le code suivant, vous pouvez accéder à la variable act_event pour obtenir l'attribut 'hostname' d'un événement :
act_event.getAttribute("hostname");

Variables fournies par la technologie ACT et accessibles par le biais de méthodes

Les variables suivantes sont fournies par la technologie ACT. Vous pouvez accéder à ces variables dans une expression en appliquant la méthode getVariable() ou l'une des méthodes getjavatypeVariable().
  • act_eventCount
  • act_location
  • act_nodeName
  • act_threshold
Par exemple, avec le code suivant, vous pouvez accéder à la variable act_eventCount :
int eventcount_integer = act_lib.getIntVariable(IACTLibrary.EVENTCOUNT);
Le tableau Tableau 1 indique les constantes fournies par l'interface IACTLibrary pour ces variables. Dans votre code, pour vous assurer que les fautes d'orthographe et les coquilles sont identifiées au moment de la compilation et non de l'exécution, utilisez toujours des constantes qui représentent ces variables plutôt que les variables elles-mêmes. Par exemple, utilisez act_lib.getIntVariable(IACTLibrary.EVENTCOUNT); et non act_lib.getIntVariable("act_eventCount");.
Tableau 1. Variables avec des constantes associées
Variable Constante associée
act_eventCount EVENTCOUNT
act_location LOCATION
act_nodeName NODENAME
act_threshold THRESHOLD
Référence associée
Elément variable