Class Ruleset

  • All Implemented Interfaces:
    org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

    public class Ruleset
    extends org.xml.sax.helpers.DefaultHandler

    Überschrift: Ruleset.

    Beschreibung: Klasse für eine Sammlung von ELOas Regeln.

    Copyright: Copyright (c) ELO Digital Office GmbH 2018

    • Constructor Summary

      Constructors 
      Constructor Description
      Ruleset()
      Erzeugt einen neuen leeren Ruleset
      Ruleset​(IXconnect ixConnect, java.lang.String tempDir, byte[] xmlText, MaskInfo maskInfo)
      XML Datenstrom einlesen
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addRule​(Rule rule, int position)
      Fügt eine neue Rule an einer vorgegebenen Position hinzu.
      void addTrigger​(java.lang.Integer userId, java.lang.String param1, java.lang.String param2, java.lang.String param3)
      Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.
      protected void addTrigger2​(TriggerInfo triggerInfo)
      Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.
      java.lang.String asXml​(IXconnect currIxConnect)
      Gibt die XML Struktur zum aktuellen Ruleset Inhalt zurück.
      void characters​(char[] ch, int start, int len)  
      java.lang.String compileBase()
      Erzeugt die Basisdeklarationen und Funktionen zu einer Rule.
      java.lang.String compileGetSetIndexLines​(MaskInfo maskInfo, int maskId)
      Erzeugt Lade- und Speicherroutinen für die Indexzeilenzugriffe.
      java.lang.String compileIndexVars​(MaskInfo maskInfo, int maskId)
      Erzeugt die JavaScript Zeilen für alle vorhandenen Indexzeilen aus der Suchmaske und allen angegebenen möglichen Zielmasken.
      java.lang.String compileProcessRules()
      Erzeugt die JavaScript Funktion ProcessRules zum Aufruf aller Regeln
      java.lang.String compileRule​(int ruleIndex)
      Erzeugt den JavaScript Code zu einer Rule-Definition
      void deleteRule​(int index)
      Löscht eine Regel aus der Liste
      void endElement​(java.lang.String uri, java.lang.String name, java.lang.String qName)  
      java.lang.String getConfigName()
      Liefert die Bezeichnung der Konfiguration zurück.
      java.lang.String getConfigPath()
      Liefert den Konfigurationspfad zurück.
      java.lang.String getContentType()
      Liefert den ContentType zurück.
      java.lang.String getDownloadFileContentType()
      Liefert den ContentType der Datei, die zum Download angeboten wird.
      java.lang.String getDownloadFileName()
      Liefert den Namen der Datei, die zum Download angeboten wird.
      java.lang.String getEndSys()
      Erzeugt den Abschluss für den namespace "sys".
      int getExecutionCount()
      Gibt die Anzahl der Aktivierungen/Weiterschaltungen zurück
      java.lang.String getGuid()
      Liest die GUID des ELO Objekts zu diesem Ruleset
      java.lang.String getiDateFrom()
      Gibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.
      java.lang.String getiDateTo()
      Gibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.
      java.util.ArrayList<java.lang.String> getIncludes()
      Liefert die Liste mit den zu ladenden Modulen(Includes) zurück.
      Intervall getInterval()
      Gibt das Intervall Objekt für die Wiederholungsrate zurück.
      java.lang.String getJScript()
      Liefert die übersetzte JavaScript Information zurück.
      java.util.HashSet<java.lang.Integer> getMasks()
      Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.
      java.util.HashSet<java.lang.Integer> getMasksList()
      Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.
      boolean getMoreResults()
      Gibt an, ob es weitere Treffer in der Suchliste gibt.
      java.lang.String getPadding()
      Erzeugt den Abschluss des generierten JavaScript Codes.
      int getRealSearchMask()
      Liefert die ID der tatsächliche Maske zurück.
      java.lang.String getRealSearchMaskGuid()
      Liefert die GUID der tatsächlichen Maske zurück
      Rule getRule​(int index)
      Gibt die selektierte Regel zurück.
      RuleReport getRuleReport()
      Liefert das Objekt für den Regel-Report zurück.
      java.util.ArrayList<Rule> getRules()
      Gibt die Liste der Regeln des aktuellen Rulesets zurück.
      java.lang.String getRulesetName()
      Liest den Namen des Rulesets
      java.lang.String getScriptOnEnd()
      Gibt das Skript für die Ende Operation zurück.
      java.lang.String getScriptOnStart()
      Gibt das Skript für die Start Operation zurück.
      java.lang.String getScriptStatus()
      Liefert den aktuellen Wert des ScriptStatus zurück.
      java.lang.String getSearchMask()
      Gibt die in der Ruleset definierte Suchmaske zurück.
      int getSearchMax()
      Gibt die definierte Größe des ResultSet zurück
      java.lang.String getSearchName()
      Gibt den Namen der Indexzeile für die Suche zurück.
      java.lang.String getSearchValue()
      Wert der Suche.
      java.lang.String getStartSys()
      Erzeugt die Startdefinition für den namespace sys
      java.lang.String getStatusMessage()
      Liest die aktuelle Status Nachricht
      boolean getStop()
      Gibt den Status des Stop Flags zurück.
      TriggerInfo getTrigger()
      Gibt das nächste verfügbare Trigger Objekt zurück.
      boolean getValidRuleset()
      Meldet zurück ob ein Ruleset aktiv und gültig ist.
      java.lang.String getxDateFrom()
      Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.
      java.lang.String getxDateTo()
      Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.
      void incExecutionCount()
      Erhöht den Ausführungszähler
      void invalidate()
      Markiert den Ruleset als ungültig.
      boolean isChanged()
      Gibt an, ob der aktuelle Ruleset verändert wurde.
      boolean isPaused()
      Gibt an, ob der Rulest gestoppt ist oder läuft.
      boolean isValid()
      Meldet zurück, ob der aktuelle Ruleset gültig ist.
      void moveRule​(int indexFrom, int indexTo)
      Verschiebt eine Regel an eine andere Stelle
      int ruleCount()
      Gibt die Anzahl der Regeln im aktuellen Ruleset zurück.
      void setConfigName​(java.lang.String newConfigName)
      Setzt die angegebene Bezeichnung der Konfiguration
      void setConfigPath​(java.lang.String newConfigPath)
      Setzt den angegebenen Konfigurationspfad.
      void setContentType​(java.lang.String newContentType)
      Setzt den angegebenen ContentType.
      void setDownloadFile​(java.lang.String fileName, java.lang.String contentType)
      Setzt den Namen und den ContentType der Datei, die zurückgeliefert wird.
      void setGuid​(java.lang.String value)
      Setzt die GUID des ELO Objekts zu diesem Ruleset
      void setiDateFrom​(java.lang.String value)
      Setzt die Sucheinschränkung für das interne Ablagedatum
      void setiDateTo​(java.lang.String value)
      Setzt die Sucheinschränkung für das interne Ablagedatum
      void setIncludes​(java.util.ArrayList<java.lang.String> includes)
      Setzt die Liste mit den zu ladenden Modulen.
      void setInterval​(Intervall value)
      Setzt die Intervall Definition zum Ruleset.
      void setJScript​(java.lang.String jScript)
      Speichert den zum Ruleset compilierten JavaScript Code.
      void setMasks​(java.util.HashSet<java.lang.Integer> masks)
      Setzt die Liste der zusätzlichen Ablagemasken.
      void setMoreResults​(boolean value)
      Setzt das Flag, ob es weitere Treffer in der Suchliste gibt.
      void setPaused​(boolean paused)
      Setzt den Ruleset auf gestoppt oder laufend.
      void setRuleReport​(RuleReport ruleReport)
      Setzt das Objekt für den Regel-Report.
      void setRules​(java.util.ArrayList<Rule> rules)
      Setzt die Liste der Regeln des aktuellen Rulesets.
      void setRulesetName​(java.lang.String value)
      Setzt den Namen des Rulesets
      void setScriptOnEnd​(java.lang.String value)
      Setzt den JavaScript Code für die Ende Operation.
      void setScriptOnStart​(java.lang.String value)
      Setzt den JavaScript Code für die Start Operation.
      void setScriptStatus​(java.lang.String status)
      Setzt den Wert des SkriptStatus auf einen neuen Wert.
      void setSearchMask​(java.lang.String maskId)
      Setzt die definierte Suchmaske
      void setSearchMaskGuid​(java.lang.String maskIdText)
      Setzt den Namen oder die Id der Suchmaske.
      void setSearchMax​(int count)
      Setzt die definierte ResultSet Größe
      void setSearchMax​(java.lang.String countText)
      Setzt die definierte ResultSet Größe
      void setSearchName​(java.lang.String value)
      Setzt den Namen der Such-Indexzeile
      void setSearchValue​(java.lang.String value)
      Setzt den Inhalt der Such-Indexzeile
      void setStatusMessage​(java.lang.String value)
      Setzt die aktuelle Status Nachricht
      void setToErrorState()
      Setzt die Status-Message auf den Fehlerzustand.
      void setValidRuleset​(boolean validRuleset)
      Unklare Bedeutung, wird eventuell wieder entfernt.
      void setxDateFrom​(java.lang.String value)
      Setzt die Sucheinschränkung für das Dokumentendatum
      void setxDateTo​(java.lang.String value)
      Setzt die Sucheinschränkung für das Dokumentendatum
      void startElement​(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)
      XML Callback, hier wird das key-Tag ausgewertet.
      void stop()
      Setzt das Stop Flag im Ruleset damit die JavaScript Libs ihre internen Schleifen beenden.
      boolean waitForTrigger()
      Gibt an, ob der Ruleset auf eine manuelle Aktivierung wartet.
      • Methods inherited from class org.xml.sax.helpers.DefaultHandler

        endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • RULE_ACTIVE_MARKER

        public static final java.lang.String RULE_ACTIVE_MARKER
        See Also:
        Constant Field Values
      • RULE_ERROR_MARKER

        public static final java.lang.String RULE_ERROR_MARKER
        See Also:
        Constant Field Values
    • Constructor Detail

      • Ruleset

        public Ruleset​(IXconnect ixConnect,
                       java.lang.String tempDir,
                       byte[] xmlText,
                       MaskInfo maskInfo)
                throws org.xml.sax.SAXException
        XML Datenstrom einlesen
        Parameters:
        ixConnect - Index Server Verbindung
        tempDir - Temporäres Verzeichnis
        xmlText - das Byte-Array mit den XML-Daten vom Client
        maskInfo - Objekt mit den Maskeninformationen
        Throws:
        org.xml.sax.SAXException - bei Parser-Fehlern
      • Ruleset

        public Ruleset()
        Erzeugt einen neuen leeren Ruleset
    • Method Detail

      • getScriptStatus

        public java.lang.String getScriptStatus()
        Liefert den aktuellen Wert des ScriptStatus zurück. Dieses Feld speichert einen Status-Wert der vom Skript verwaltet wird und in der Status Seite angezeigt wird.
        Returns:
        aktueller Wert
      • setScriptStatus

        public void setScriptStatus​(java.lang.String status)
        Setzt den Wert des SkriptStatus auf einen neuen Wert.
        Parameters:
        status - neuer Wert
      • getJScript

        public java.lang.String getJScript()
        Liefert die übersetzte JavaScript Information zurück.
        Returns:
        JavaScript Code zum Ruleset
      • stop

        public void stop()
        Setzt das Stop Flag im Ruleset damit die JavaScript Libs ihre internen Schleifen beenden.
      • getStop

        public boolean getStop()
        Gibt den Status des Stop Flags zurück.
        Returns:
        Stop-Flag
      • setJScript

        public void setJScript​(java.lang.String jScript)
        Speichert den zum Ruleset compilierten JavaScript Code. Dieser kann dann später zu debugging Zwecken angezeigt werden.
        Parameters:
        jScript - Erzeugter JavaScript Code.
      • isChanged

        public boolean isChanged()
        Gibt an, ob der aktuelle Ruleset verändert wurde.
        Returns:
        Geändert
      • isValid

        public boolean isValid()
        Meldet zurück, ob der aktuelle Ruleset gültig ist. Ein Ruleset kann ungültig sein, weil beim Laden oder Parsen der XML Struktur ein Fehler aufgetreten ist.
        Returns:
        Gültiger Ruleset
      • isPaused

        public boolean isPaused()
        Gibt an, ob der Rulest gestoppt ist oder läuft.
        Returns:
        gestoppt
      • setPaused

        public void setPaused​(boolean paused)
        Setzt den Ruleset auf gestoppt oder laufend.
        Parameters:
        paused - Status
      • getValidRuleset

        public boolean getValidRuleset()
        Meldet zurück ob ein Ruleset aktiv und gültig ist.
        Returns:
        Ruleset gültig
      • setValidRuleset

        public void setValidRuleset​(boolean validRuleset)
        Unklare Bedeutung, wird eventuell wieder entfernt.
        Parameters:
        validRuleset - gültiger Regelsatz
      • invalidate

        public void invalidate()
        Markiert den Ruleset als ungültig.
      • getStatusMessage

        public java.lang.String getStatusMessage()
        Liest die aktuelle Status Nachricht
        Returns:
        aktueller Status
      • setStatusMessage

        public void setStatusMessage​(java.lang.String value)
        Setzt die aktuelle Status Nachricht
        Parameters:
        value - Neuer Status
      • setToErrorState

        public void setToErrorState()
        Setzt die Status-Message auf den Fehlerzustand.
      • setDownloadFile

        public void setDownloadFile​(java.lang.String fileName,
                                    java.lang.String contentType)
        Setzt den Namen und den ContentType der Datei, die zurückgeliefert wird.
        Parameters:
        fileName - Dateiname
        contentType - ContentType
      • getDownloadFileName

        public java.lang.String getDownloadFileName()
        Liefert den Namen der Datei, die zum Download angeboten wird.
        Returns:
        Name der Download-Datei
      • getDownloadFileContentType

        public java.lang.String getDownloadFileContentType()
        Liefert den ContentType der Datei, die zum Download angeboten wird.
        Returns:
        ContentType der Download-Datei
      • getGuid

        public java.lang.String getGuid()
        Liest die GUID des ELO Objekts zu diesem Ruleset
        Returns:
        aktueller Status
      • setGuid

        public void setGuid​(java.lang.String value)
        Setzt die GUID des ELO Objekts zu diesem Ruleset
        Parameters:
        value - Neuer Status
      • getRulesetName

        public java.lang.String getRulesetName()
        Liest den Namen des Rulesets
        Returns:
        Name
      • setRulesetName

        public void setRulesetName​(java.lang.String value)
        Setzt den Namen des Rulesets
        Parameters:
        value - Neuer Name
      • setSearchName

        public void setSearchName​(java.lang.String value)
        Setzt den Namen der Such-Indexzeile
        Parameters:
        value - Neuer Name
      • setSearchValue

        public void setSearchValue​(java.lang.String value)
        Setzt den Inhalt der Such-Indexzeile
        Parameters:
        value - Neuer Name
      • getMasksList

        public java.util.HashSet<java.lang.Integer> getMasksList()
        Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.
        Returns:
        Ablagemasken
      • getMasks

        public java.util.HashSet<java.lang.Integer> getMasks()
        Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.
        Returns:
        Ablagemasken
      • setMasks

        public void setMasks​(java.util.HashSet<java.lang.Integer> masks)
        Setzt die Liste der zusätzlichen Ablagemasken.
        Parameters:
        masks - Zusätzliche Ablagemasken
      • getRules

        public java.util.ArrayList<Rule> getRules()
        Gibt die Liste der Regeln des aktuellen Rulesets zurück.
        Returns:
        Regelliste
      • setRules

        public void setRules​(java.util.ArrayList<Rule> rules)
        Setzt die Liste der Regeln des aktuellen Rulesets.
        Parameters:
        rules - Neue Regelliste
      • getIncludes

        public java.util.ArrayList<java.lang.String> getIncludes()
        Liefert die Liste mit den zu ladenden Modulen(Includes) zurück.
        Returns:
        Liste mit den zu ladenden Modulen
      • setIncludes

        public void setIncludes​(java.util.ArrayList<java.lang.String> includes)
        Setzt die Liste mit den zu ladenden Modulen.
        Parameters:
        includes - Zu ladenden Modulen
      • getiDateFrom

        public java.lang.String getiDateFrom()
        Gibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.
        Returns:
        Startdatum
      • getiDateTo

        public java.lang.String getiDateTo()
        Gibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.
        Returns:
        Endedatum
      • getxDateFrom

        public java.lang.String getxDateFrom()
        Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.
        Returns:
        Startdatum
      • getxDateTo

        public java.lang.String getxDateTo()
        Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.
        Returns:
        Endedatum
      • setiDateFrom

        public void setiDateFrom​(java.lang.String value)
        Setzt die Sucheinschränkung für das interne Ablagedatum
        Parameters:
        value - Startdatum
      • setiDateTo

        public void setiDateTo​(java.lang.String value)
        Setzt die Sucheinschränkung für das interne Ablagedatum
        Parameters:
        value - Endedatum
      • setxDateFrom

        public void setxDateFrom​(java.lang.String value)
        Setzt die Sucheinschränkung für das Dokumentendatum
        Parameters:
        value - Startdatum
      • setxDateTo

        public void setxDateTo​(java.lang.String value)
        Setzt die Sucheinschränkung für das Dokumentendatum
        Parameters:
        value - Endedatum
      • getInterval

        public Intervall getInterval()
        Gibt das Intervall Objekt für die Wiederholungsrate zurück.
        Returns:
        Intervall
      • setInterval

        public void setInterval​(Intervall value)
        Setzt die Intervall Definition zum Ruleset.
        Parameters:
        value - Intervall
      • getContentType

        public java.lang.String getContentType()
        Liefert den ContentType zurück.
        Returns:
        ContentType
      • setContentType

        public void setContentType​(java.lang.String newContentType)
        Setzt den angegebenen ContentType.
        Parameters:
        newContentType - ContentType
      • getRuleReport

        public RuleReport getRuleReport()
        Liefert das Objekt für den Regel-Report zurück.
        Returns:
        Objekt für den Regel-Report
      • setRuleReport

        public void setRuleReport​(RuleReport ruleReport)
        Setzt das Objekt für den Regel-Report.
        Parameters:
        ruleReport - Objekt für den Regel-Report
      • setConfigName

        public void setConfigName​(java.lang.String newConfigName)
        Setzt die angegebene Bezeichnung der Konfiguration
        Parameters:
        newConfigName - Bezeichnung der Konfiguration
      • getConfigName

        public java.lang.String getConfigName()
        Liefert die Bezeichnung der Konfiguration zurück.
        Returns:
        Bezeichnung der Konfiguration
      • setConfigPath

        public void setConfigPath​(java.lang.String newConfigPath)
        Setzt den angegebenen Konfigurationspfad.
        Parameters:
        newConfigPath - Konfigurationspfad
      • getConfigPath

        public java.lang.String getConfigPath()
        Liefert den Konfigurationspfad zurück.
        Returns:
        Konfigurationspfad
      • getScriptOnStart

        public java.lang.String getScriptOnStart()
        Gibt das Skript für die Start Operation zurück. Dieser Wert ist nur vorhanden, wenn er vorher durch setOnStart gesetzt wurde.
        Returns:
        JavaScript Code für die Startbearbeitung
      • setScriptOnStart

        public void setScriptOnStart​(java.lang.String value)
        Setzt den JavaScript Code für die Start Operation.
        Parameters:
        value - JavaScript Code
      • getScriptOnEnd

        public java.lang.String getScriptOnEnd()
        Gibt das Skript für die Ende Operation zurück. Dieser Wert ist nur vorhanden, wenn er vorher durch setOnEnd gesetzt wurde.
        Returns:
        JavaScript Code für die Endebearbeitung
      • setScriptOnEnd

        public void setScriptOnEnd​(java.lang.String value)
        Setzt den JavaScript Code für die Ende Operation.
        Parameters:
        value - JavaScript Code
      • getMoreResults

        public boolean getMoreResults()
        Gibt an, ob es weitere Treffer in der Suchliste gibt.
        Returns:
        Weitere Treffer vorhanden
      • setMoreResults

        public void setMoreResults​(boolean value)
        Setzt das Flag, ob es weitere Treffer in der Suchliste gibt.
        Parameters:
        value - weitere Treffer vorhanden
      • ruleCount

        public int ruleCount()
        Gibt die Anzahl der Regeln im aktuellen Ruleset zurück. Ein leerer Ruleset liefert eine 0.
        Returns:
        Anzahl der Regeln
      • getRule

        public Rule getRule​(int index)
        Gibt die selektierte Regel zurück. Der Index liegt zwischen 0 und ruleCount(). Beim Zugriff auf einen nicht vorhandenen Index wird eine Range Exception geworfen.
        Parameters:
        index - Nummer der Regel, beginnt mit 0.
        Returns:
        Gewählte Regel
      • getSearchName

        public java.lang.String getSearchName()
        Gibt den Namen der Indexzeile für die Suche zurück. Bei einer Bearbeitung der Wiedervorlage wird der Pseudoname "ELO_Reminder" verwendet, bei der Bearbeitung der Workflowliste "ELO_Workflow".
        Returns:
        Name der Suchindexzeile
      • getSearchValue

        public java.lang.String getSearchValue()
        Wert der Suche. Die Pseudozeilen "ELO_Reminder" und "ELO_Workflow" haben keinen Wert für den Suchbereich, hier wird dieser Eintrag ignoriert.
        Returns:
        Suchbereich
      • getSearchMask

        public java.lang.String getSearchMask()
        Gibt die in der Ruleset definierte Suchmaske zurück. Das kann eine ID, GUID oder Maskennamen sein.
        Returns:
        ID, GUID oder Maskenname
      • getRealSearchMask

        public int getRealSearchMask()
        Liefert die ID der tatsächliche Maske zurück.
        Returns:
        ID der tatsächlichen Maske
      • getRealSearchMaskGuid

        public java.lang.String getRealSearchMaskGuid()
        Liefert die GUID der tatsächlichen Maske zurück
        Returns:
        GUID der tatsächlichen Maske
      • setSearchMask

        public void setSearchMask​(java.lang.String maskId)
        Setzt die definierte Suchmaske
        Parameters:
        maskId - Maskennummer
      • setSearchMaskGuid

        public void setSearchMaskGuid​(java.lang.String maskIdText)
        Setzt den Namen oder die Id der Suchmaske.
        Parameters:
        maskIdText - Name oder Id der Suchmaske
      • getSearchMax

        public int getSearchMax()
        Gibt die definierte Größe des ResultSet zurück
        Returns:
        Anzahl
      • setSearchMax

        public void setSearchMax​(int count)
        Setzt die definierte ResultSet Größe
        Parameters:
        count - Anzahl
      • setSearchMax

        public void setSearchMax​(java.lang.String countText)
        Setzt die definierte ResultSet Größe
        Parameters:
        countText - Anzahl
      • addRule

        public void addRule​(Rule rule,
                            int position)
        Fügt eine neue Rule an einer vorgegebenen Position hinzu. Falls die Position -1 oder größer als die Anzahl der vorhandenen Regeln ist, wird die neue Regel am Ende der Liste angehangen.
        Parameters:
        rule - Neue Regel
        position - Position
      • moveRule

        public void moveRule​(int indexFrom,
                             int indexTo)
        Verschiebt eine Regel an eine andere Stelle
        Parameters:
        indexFrom - Index der zu verschiebenden Regel
        indexTo - Ziel Index
      • deleteRule

        public void deleteRule​(int index)
        Löscht eine Regel aus der Liste
        Parameters:
        index - der zu löschenden Regel
      • getExecutionCount

        public int getExecutionCount()
        Gibt die Anzahl der Aktivierungen/Weiterschaltungen zurück
        Returns:
        Anzahl
      • incExecutionCount

        public void incExecutionCount()
        Erhöht den Ausführungszähler
      • getStartSys

        public java.lang.String getStartSys()
        Erzeugt die Startdefinition für den namespace sys
        Returns:
        Text mit der Startdefinition
      • getEndSys

        public java.lang.String getEndSys()
                                   throws java.lang.Exception
        Erzeugt den Abschluss für den namespace "sys".
        Returns:
        Text mit Abschluss
        Throws:
        java.lang.Exception
      • getPadding

        public java.lang.String getPadding()
        Erzeugt den Abschluss des generierten JavaScript Codes.
        Returns:
        Abschluss des JavaScript Codes
      • waitForTrigger

        public boolean waitForTrigger()
        Gibt an, ob der Ruleset auf eine manuelle Aktivierung wartet. Nur Rulesets mit einem manuellen Trigger können auf eine Aktivierung warten. Rulesets mit periodischen Trigger warten nicht.
        Returns:
        Warten auf eine manuelle Aktivierung
      • addTrigger

        public void addTrigger​(java.lang.Integer userId,
                               java.lang.String param1,
                               java.lang.String param2,
                               java.lang.String param3)
                        throws java.lang.Exception
        Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.
        Parameters:
        userId - Benutzer ID
        param1 - Erstes Parameter
        param2 - Zweites Parameter
        param3 - Drittes Parameter
        Throws:
        java.lang.Exception
      • addTrigger2

        protected void addTrigger2​(TriggerInfo triggerInfo)
                            throws java.lang.Exception
        Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.
        Parameters:
        triggerInfo - Objekt mit den Aufrufparametern
        Throws:
        java.lang.Exception
      • getTrigger

        public TriggerInfo getTrigger()
        Gibt das nächste verfügbare Trigger Objekt zurück.
        Returns:
        Trigger Objekt oder null (kein weiteres Objekt verfügbar)
      • compileIndexVars

        public java.lang.String compileIndexVars​(MaskInfo maskInfo,
                                                 int maskId)
        Erzeugt die JavaScript Zeilen für alle vorhandenen Indexzeilen aus der Suchmaske und allen angegebenen möglichen Zielmasken.
        Parameters:
        maskInfo - Maskendefinitionen
        maskId - Suchmaske
        Returns:
        JavaScript code
      • compileProcessRules

        public java.lang.String compileProcessRules()
        Erzeugt die JavaScript Funktion ProcessRules zum Aufruf aller Regeln
        Returns:
        JavaScript Funktion
      • compileRule

        public java.lang.String compileRule​(int ruleIndex)
        Erzeugt den JavaScript Code zu einer Rule-Definition
        Parameters:
        ruleIndex - Regelindex
        Returns:
        JavaScript Code der Regel
      • compileGetSetIndexLines

        public java.lang.String compileGetSetIndexLines​(MaskInfo maskInfo,
                                                        int maskId)
        Erzeugt Lade- und Speicherroutinen für die Indexzeilenzugriffe. Die Ladezugriffe müssen nur für die Suchmaske definiert werden, die Speicherzugriffe hingegen für jede mögliche Zielmaske. Vor dem Speichern muss dann die aktuelle Maske geprüft werden und die entsprechende Speicherroutine aufgerufen werden.
        Parameters:
        maskInfo - Maskendefinitionen
        maskId - Suchmaske
        Returns:
        JavaScript Code
      • compileBase

        public java.lang.String compileBase()
        Erzeugt die Basisdeklarationen und Funktionen zu einer Rule.
        Returns:
        Basisdeklarationen und Funktionen einer Regel
      • asXml

        public java.lang.String asXml​(IXconnect currIxConnect)
        Gibt die XML Struktur zum aktuellen Ruleset Inhalt zurück.
        Parameters:
        currIxConnect - Index Server Verbindung
        Returns:
        XML Text
      • startElement

        public void startElement​(java.lang.String uri,
                                 java.lang.String localName,
                                 java.lang.String qName,
                                 org.xml.sax.Attributes atts)
                          throws org.xml.sax.SAXException
        XML Callback, hier wird das key-Tag ausgewertet.
        Specified by:
        startElement in interface org.xml.sax.ContentHandler
        Overrides:
        startElement in class org.xml.sax.helpers.DefaultHandler
        Parameters:
        uri - siehe Klasse DefaultHandler
        localName - siehe Klasse DefaultHandler
        qName - siehe Klasse DefaultHandler
        atts - siehe Klasse DefaultHandler
        Throws:
        org.xml.sax.SAXException - bei Fehlern
      • endElement

        public void endElement​(java.lang.String uri,
                               java.lang.String name,
                               java.lang.String qName)
                        throws org.xml.sax.SAXException
        Specified by:
        endElement in interface org.xml.sax.ContentHandler
        Overrides:
        endElement in class org.xml.sax.helpers.DefaultHandler
        Throws:
        org.xml.sax.SAXException
      • characters

        public void characters​(char[] ch,
                               int start,
                               int len)
        Specified by:
        characters in interface org.xml.sax.ContentHandler
        Overrides:
        characters in class org.xml.sax.helpers.DefaultHandler