Flujo de sucesos a través de un conjunto de reglas

Los sucesos fluyen a través de un conjunto de reglas en el orden en que están codificados los bloques de reglas y las reglas. Cuando el motor de Active Correlation Technology recibe un suceso, el motor determina el tipo de suceso e identifica las reglas que utilizan este tipo de suceso para su activación, su proceso de sucesos o su desactivación.

Cómo las reglas utilizan los sucesos

Cada regla que utiliza el suceso en primer lugar determina si el suceso cumple todos los criterios especificados para la activación de la regla, el proceso de sucesos, o la desactivación de la regla. Si los cumple, la regla realiza la siguiente acción:
Para la activación de la regla
Si están codificadas, se ejecutan las acciones dentro del elemento <onActivation> para la regla.
Para el proceso de sucesos
La regla procesa el suceso. Cuando se cumple el patrón de la regla, se ejecutan las acciones de respuesta de la regla, si están codificadas. En algunas situaciones, las acciones de respuesta de reglas pueden hacer lo siguiente:
  • La acción puede hacer que el suceso se salte el proceso en el resto del bloque de reglas o del conjunto de reglas.
  • La acción puede enviar un suceso nuevo o existente a otra regla o bloque de reglas para su proceso.
Para la desactivación de reglas
Si están codificadas, se ejecutan las acciones dentro del elemento <onDeactivation> para la regla.

Métodos que pueden influir en el flujo de sucesos

Active Correlation Technology proporciona los siguientes métodos que pueden llamarse para influir en el flujo de sucesos a través del conjunto de reglas. Estos métodos están disponibles a través de la variable act_lib.
exitRuleSet
Este método especifica que el suceso actual no sea procesado por ninguna otra regla dentro del conjunto de reglas.
exitRuleBlock
Este método especifica que el suceso actual no sea procesado por ninguna otra regla dentro del bloque de reglas o en cualquier bloque de reglas que contenga este bloque de reglas. Sin embargo, sí que será procesado por otras reglas que estén fuera del ámbito del bloque de reglas actual.
forward
Este método especifica que un suceso debe ser enviado a otras reglas y bloques de reglas aunque la regla actual no haya terminado su proceso. Entonces, cada una de las otras reglas y bloques de reglas procesa el suceso completamente antes de devolverlo a la regla que llamó al método forward.
forwardOnCompletion
Este método especifica que un suceso debe ser enviado a otras reglas y bloques de reglas una vez la regla actual haya completado su proceso.