Espressioni

Un'espressione è un codice che contiene la logica personalizzata che può essere aggiunta ad una regola. Le espressioni possono anche accedere al codice esterno all'engine dell'Active Correlation Technology. Nel linguaggio della regola, le espressioni sono valide solo in contesti specifici o negli elementi di linguaggio della regola.

Gli scrittori della regola possono codificare le espressioni per scopi diversi secondo il contesto e il risultato che essi desiderano ottenere. Le espressioni vengono utilizzate di frequente per l'inizializzazione delle variabili, per la definizione dei criteri di selezione eventi e per la specifica della risposta della regola e delle azioni attinenti al ciclo di vita.

Elementi di lingua che contengono le espressioni

Ogni elemento di lingua che contiene un'espressione ha un attributo expressionLanguage che identifica il linguaggio di programmazione in cui è scritta l'espressione. Il linguaggio di programmazione Java è l'unico linguaggio di espressione supportato.

Le espressioni possono essere contenute nei seguenti elementi del linguaggio della regola.
  • <varInitializer> per una serie di regole, blocco di regole o variabile di regola
  • <filteringPredicate> su <eventSelector>
  • <computedValue> su <groupingKey>
  • <computeFunction> su una regola di calcolo
  • <booleanThreshold> su una regola di soglia
  • <computedThreshold> su una regola di soglia
  • Le azioni di risposta della regola per una regola:
    • <action> in <onDetection>. Quest'azione è valida solo per le regole di duplicato, filtro, sequenza e soglia.
    • <action> in <onNextEvent>. Quest'azione è valida solo per la regola di duplicato.
    • <action> in <onTimeOut>. Quest'azione è valida solo per le regole di sequenza e soglia.
    • <action> in <onTimeWindowComplete>. Quest'azione è valida solo per le regole di raccolta, calcolo, duplicato e timer.
  • Azioni di durata per una regola:
    • <action> in <onLoad>
    • <action> in <onActivation>
    • <action> in <onDeactivation>
    • <action> in <onUnload>

Supporto dell'Active Correlation Technology nella codifica delle espressioni

bCome supporto alla codifica di espressioni, Active Correlation Technology fornisce le seguenti funzioni:
  • Importazione di moduli esterni (come classi Java) da utilizzare nelle espressioni.
  • Inizializzazione e accesso alla serie di regole, blocco di regole o variabili di regola.
  • Tramite la variabile act_event, accesso all'evento corrente che una regola sta elaborando.
  • Tramite la variabile act_eventCount, accesso al numero di eventi che sono stati accettati da una regola.
  • Tramite la variabile act_eventList, accesso all'elenco degli eventi che sono stati accettati da una regola. Ciò include la potenzialità di accesso ai diversi attributi di un evento e la potenzialità di accesso ad ogni evento in una regola di sequenza tramite il relativo nome alias.
  • Tramite la variabile act_lib, accesso ai metodi che includono la potenzialità di richiesta e impostazione delle variabili e di controllo del flusso di eventi tramite una serie di regole.
  • Tramite la variabile act_location accesso all'ubicazione, all'interno della gerarchia di regole di un'espressione.
  • Tramite la variabile act_nodeName, accesso al nome completo di un nodo.
  • Tramite la variabile act_threshold, accesso al valore di soglia per una regola di soglia.