Class WorkingSet


  • public class WorkingSet
    extends java.lang.Object

    Überschrift: WorkingSet.

    Beschreibung: Eine Sammlung von ELOas-Rulesets.

    Copyright: Copyright (c) ELO Digital Office GmbH 2018

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String version
      Enthält eine Liste aus Rulesets zur Ausführung im ELOas
    • Constructor Summary

      Constructors 
      Constructor Description
      WorkingSet​(IXconnect ixConnect, java.lang.String baseGuid, java.lang.String tempDir, java.lang.String checkoutDir, java.lang.String reportDir, boolean debug, boolean isDirect)
      Legt einen neuen Working Set an.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean activateRuleset​(java.lang.String rulesetName)
      Aktiviert einen Ruleset, alle anderen werden auf Pausiert gestellt.
      Ruleset addRuleset()
      Fügt einen neuen Ruleset am Ende der Liste der Rulesets an
      void clearJSErrorMessage​(int index)
      Löscht die aktuelle JavaScript Fehlernachricht
      void close()
      Schließt alle offenen WorkingSet Resourcen
      Ruleset getActiveRuleset()
      Gibt den aktuell aktiven Ruleset zurück.
      int getCount()
      Gibt die Anzahl der vorhandenen Rulesets zurück
      boolean getGoOn()
      Wenn ein Ruleset Thread abgebrochen wird, setzt der ELOas zuerst das goOn Flag zurück um den JavaScript Libs eine freiwillige Terminierung zu ermöglichen.
      java.lang.String getJavaScriptImports()
      Liefert die importierten JavaScript Objekte zurück.
      java.lang.String getJScript​(int rulesetId)
      Liefert die übersetzte JavaScript Information zurück.
      java.lang.String getJSErrorMessage​(int index)
      Gibt die aktuelle JavaScript Fehlernachricht zu einem Ruleset zurück.
      Ruleset getRuleset​(int index)
      Gibt den über den Index ausgewählten Ruleset aus der Liste der Rulesets zurück.
      Ruleset getRuleset​(java.lang.String name)
      Gibt den genannten Ruleset zurück.
      Ruleset[] getRulesets()
      Liefert ein Array mit allen Rulesets dieses WorkingSets zurück.
      java.lang.String getStatus()
      Gibt den aktuellen Statustext zurück.
      void loadItems()
      Ermittelt aus der BaseGuid die GUIDs der Ordner für die RuleSets, JavaScript Codes und Übersetzungslisten.
      void loadJarFiles()
      Lädt die externen JAR-Dateien für den ELO AS.
      void loadRulesets()
      Lädt die Liste der Rulesets neu vom Indexserver ein.
      void processItems()
      Führt alle aktiven Rulesets aus die zum aktullen Zeitpunkt ein aktives Intervall haben.
      void reloadSingleRuleset​(int rsIndex)
      Lädt einen Ruleset neu, hat keinen Einfluss auf die anderen bestehenden Rulesets.
      void setDirectPool​(DirectPool directPool)
      Setzt das angegebene Behälter für die direkten Regeln.
      void setDirectWorkingSet​(WorkingSet dirWorkingSet)
      Setzt den angegebenen WorkingSet für die direkten Regeln.
      void setJSErrorMessage​(java.lang.String exceptionMessage, java.lang.String jsCode, int index)
      Füllt die aktuelle JavaScript Fehlernachricht mit einem HTML formatierten Codeausschnitt der Fehlerstelle.
      void setStatus​(java.lang.String value)
      Setzt den Text für den aktuellen Statuswert.
      java.lang.String singleShot​(java.lang.String rulesetName, TriggerInfo info)
      Einmalige direkte Ausführung eines Rulesets aus dem Direct Ordner.
      void stop()
      Setzt das goOn Flag zurück, welches in den JavaScript Libs dann einen Abbruch der Schleifen auslöst.
      void storeRulesets()
      Speichert alle veränderten Rulesets.
      • Methods inherited from class java.lang.Object

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

      • version

        public static final java.lang.String version
        Enthält eine Liste aus Rulesets zur Ausführung im ELOas
        See Also:
        Constant Field Values
    • Constructor Detail

      • WorkingSet

        public WorkingSet​(IXconnect ixConnect,
                          java.lang.String baseGuid,
                          java.lang.String tempDir,
                          java.lang.String checkoutDir,
                          java.lang.String reportDir,
                          boolean debug,
                          boolean isDirect)
        Legt einen neuen Working Set an. Wenn das Arbeitsverzeichnis für die Ruleset Dateien leer ist, dann werden die Ruleset Daten aus dem Zusatztext statt aus der Dokumentendatei gelesen.
        Parameters:
        ixConnect - Verbindung zum Indexserver
        baseGuid - GUID des Basisregisters
        tempDir - Arbeitsverzeichnis für die Ruleset Dateien
        checkoutDir - Optional CheckOut Verzeichnis mit neueren Versionen
        reportDir - Verzeichnis für den AS Report
        debug - Debugger aktivieren
        isDirect -
    • Method Detail

      • stop

        public void stop()
        Setzt das goOn Flag zurück, welches in den JavaScript Libs dann einen Abbruch der Schleifen auslöst.
      • getGoOn

        public boolean getGoOn()
        Wenn ein Ruleset Thread abgebrochen wird, setzt der ELOas zuerst das goOn Flag zurück um den JavaScript Libs eine freiwillige Terminierung zu ermöglichen.
        Returns:
        goOn Zustand
      • close

        public void close()
        Schließt alle offenen WorkingSet Resourcen
      • getStatus

        public java.lang.String getStatus()
        Gibt den aktuellen Statustext zurück.
        Returns:
        Status
      • setStatus

        public void setStatus​(java.lang.String value)
        Setzt den Text für den aktuellen Statuswert.
        Parameters:
        value - Status
      • getJScript

        public java.lang.String getJScript​(int rulesetId)
        Liefert die übersetzte JavaScript Information zurück.
        Parameters:
        rulesetId - Nummer des Ruleset
        Returns:
        JavaScript Code zum Ruleset
      • getCount

        public int getCount()
        Gibt die Anzahl der vorhandenen Rulesets zurück
        Returns:
        Anzahl
      • addRuleset

        public Ruleset addRuleset()
        Fügt einen neuen Ruleset am Ende der Liste der Rulesets an
        Returns:
        Neuer, leerer Ruleset
      • getActiveRuleset

        public Ruleset getActiveRuleset()
        Gibt den aktuell aktiven Ruleset zurück.
        Returns:
        Ruleset
      • getRuleset

        public Ruleset getRuleset​(int index)
        Gibt den über den Index ausgewählten Ruleset aus der Liste der Rulesets zurück.
        Parameters:
        index - Index vom Regelsatz
        Returns:
        Ruleset
      • getRuleset

        public Ruleset getRuleset​(java.lang.String name)
        Gibt den genannten Ruleset zurück. Falls der Name in der Liste der Rulesets nicht existiert, wird null zurückgegeben.
        Parameters:
        name - Ruleset Name
        Returns:
        Ruleset
      • getJSErrorMessage

        public java.lang.String getJSErrorMessage​(int index)
        Gibt die aktuelle JavaScript Fehlernachricht zu einem Ruleset zurück.
        Parameters:
        index - des Rulesets
        Returns:
        Fehlernachricht
      • clearJSErrorMessage

        public void clearJSErrorMessage​(int index)
        Löscht die aktuelle JavaScript Fehlernachricht
        Parameters:
        index - des Rulesets
      • setJSErrorMessage

        public void setJSErrorMessage​(java.lang.String exceptionMessage,
                                      java.lang.String jsCode,
                                      int index)
        Füllt die aktuelle JavaScript Fehlernachricht mit einem HTML formatierten Codeausschnitt der Fehlerstelle.
        Parameters:
        exceptionMessage - Exception Nachricht
        jsCode - komplette Skript Code
        index - index des Rulesets
      • loadItems

        public void loadItems()
                       throws java.rmi.RemoteException,
                              java.io.IOException,
                              java.lang.Exception
        Ermittelt aus der BaseGuid die GUIDs der Ordner für die RuleSets, JavaScript Codes und Übersetzungslisten. Liest anschließend die Einträge aus diesen Ordnern ein
        Throws:
        java.rmi.RemoteException
        java.io.IOException
        java.lang.Exception
      • loadRulesets

        public void loadRulesets()
                          throws java.rmi.RemoteException,
                                 java.io.IOException,
                                 java.lang.Exception
        Lädt die Liste der Rulesets neu vom Indexserver ein.
        Throws:
        java.rmi.RemoteException
        java.io.IOException
        java.lang.Exception
      • reloadSingleRuleset

        public void reloadSingleRuleset​(int rsIndex)
                                 throws de.elo.utils.net.RemoteException,
                                        java.io.IOException
        Lädt einen Ruleset neu, hat keinen Einfluss auf die anderen bestehenden Rulesets.
        Parameters:
        rsIndex - Index vom Regelsatz
        Throws:
        de.elo.utils.net.RemoteException
        java.io.IOException
      • storeRulesets

        public void storeRulesets()
                           throws java.rmi.RemoteException,
                                  java.io.IOException
        Speichert alle veränderten Rulesets.
        Throws:
        java.rmi.RemoteException
        java.io.IOException
      • loadJarFiles

        public void loadJarFiles()
                          throws java.rmi.RemoteException,
                                 java.lang.Exception
        Lädt die externen JAR-Dateien für den ELO AS.
        Throws:
        java.rmi.RemoteException
        java.lang.Exception
      • activateRuleset

        public boolean activateRuleset​(java.lang.String rulesetName)
        Aktiviert einen Ruleset, alle anderen werden auf Pausiert gestellt.
        Parameters:
        rulesetName - Zu aktivierender Ruleset
        Returns:
      • getRulesets

        public Ruleset[] getRulesets()
        Liefert ein Array mit allen Rulesets dieses WorkingSets zurück.
        Returns:
      • setDirectWorkingSet

        public void setDirectWorkingSet​(WorkingSet dirWorkingSet)
        Setzt den angegebenen WorkingSet für die direkten Regeln.
        Parameters:
        dirWorkingSet - WorkingSet für die direkten Regeln
      • setDirectPool

        public void setDirectPool​(DirectPool directPool)
        Setzt das angegebene Behälter für die direkten Regeln.
        Parameters:
        directPool - Behälter für die direkten Regeln
      • processItems

        public void processItems()
        Führt alle aktiven Rulesets aus die zum aktullen Zeitpunkt ein aktives Intervall haben.
      • singleShot

        public java.lang.String singleShot​(java.lang.String rulesetName,
                                           TriggerInfo info)
                                    throws java.io.IOException
        Einmalige direkte Ausführung eines Rulesets aus dem Direct Ordner.
        Parameters:
        rulesetName - Name des Regelsatzes
        info - Aufrufparameter
        Returns:
        Ergebnis
        Throws:
        java.io.IOException
      • getJavaScriptImports

        public java.lang.String getJavaScriptImports()
        Liefert die importierten JavaScript Objekte zurück.
        Returns:
        importierte JavaScript Objekte