Package de.elo.mover.main
Class Ruleset
java.lang.Object
org.xml.sax.helpers.DefaultHandler
de.elo.mover.main.Ruleset
- All Implemented Interfaces:
ContentHandler,DTDHandler,EntityResolver,ErrorHandler
Überschrift: Ruleset.
Beschreibung: Klasse für eine Sammlung von ELOas-Regeln.
Copyright: Copyright (c) ELO Digital Office GmbH 2018 - 2022
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidFügt eine neue Rule an einer vorgegebenen Position hinzu.voidaddTrigger(Integer userId, String param1, String param2, String param3) Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.protected voidaddTrigger2(TriggerInfo triggerInfo) Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.Gibt die XML-Struktur zum aktuellen Ruleset-Inhalt zurück.voidcharacters(char[] ch, int start, int len) Erzeugt die Basisdeklarationen und Funktionen zu einer Rule.compileGetSetIndexLines(MaskInfo maskInfo, int maskId) Erzeugt Lade- und Speicherroutinen für die Indexzeilenzugriffe.compileIndexVars(MaskInfo maskInfo, int maskId) Erzeugt die JavaScript Zeilen für alle vorhandenen Indexzeilen aus der Suchmaske und allen angegebenen möglichen Zielmasken.Erzeugt die JavaScript Funktion ProcessRules zum Aufruf aller RegelncompileRule(int ruleIndex) Erzeugt den JavaScript Code zu einer Rule-DefinitionvoiddeleteRule(int index) Löscht eine Regel aus der ListevoidendElement(String uri, String name, String qName) Liefert die Bezeichnung der Konfiguration zurück.Liefert den Konfigurationspfad zurück.Liefert den ContentType zurück.Liefert den ContentType der Datei, die zum Download angeboten wird.Liefert den Namen der Datei, die zum Download angeboten wird.Erzeugt den Abschluss für den namespace "sys".intGibt die Anzahl der Aktivierungen/Weiterschaltungen zurückgetGuid()Liest die GUID des ELO Objekts zu diesem RulesetGibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.Gibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.Liefert die Liste mit den zu ladenden Modulen(Includes) zurück.Gibt das Intervall Objekt für die Wiederholungsrate zurück.Liefert die übersetzte JavaScript Information zurück.getMasks()Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.booleanGibt an, ob es weitere Treffer in der Suchliste gibt.Erzeugt den Abschluss des generierten JavaScript Codes.intLiefert die ID der tatsächliche Maske zurück.Liefert die GUID der tatsächlichen Maske zurückgetRule(int index) Gibt die selektierte Regel zurück.Liefert das Objekt für den Regel-Report zurück.getRules()Gibt die Liste der Regeln des aktuellen Rulesets zurück.Liefert den Namen des Rulesets zurück.Gibt das Skript für die Ende Operation zurück.Gibt das Skript für die Start Operation zurück.Liefert den aktuellen Wert des ScriptStatus zurück.Gibt die in der Ruleset definierte Suchmaske zurück.intGibt die definierte Größe des ResultSet zurückGibt den Namen der Indexzeile für die Suche zurück.Wert der Suche.Erzeugt die Startdefinition für den namespace sysLiefert die aktuelle Statusnachricht zurück.booleangetStop()Gibt den Status des Stop Flags zurück.Gibt das nächste verfügbare Trigger Objekt zurück.booleanMeldet zurück ob ein Ruleset aktiv und gültig ist.Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.voidErhöht den AusführungszählervoidMarkiert den Ruleset als ungültig.booleanGibt an, ob der aktuelle Ruleset verändert wurde.booleanisPaused()Gibt an, ob der Ruleset gestoppt ist oder läuft.booleanisValid()Meldet zurück, ob der aktuelle Ruleset gültig ist.voidmoveRule(int indexFrom, int indexTo) Verschiebt eine Regel an eine andere StelleintGibt die Anzahl der Regeln im aktuellen Ruleset zurück.voidsetConfigName(String newConfigName) Setzt die angegebene Bezeichnung der KonfigurationvoidsetConfigPath(String newConfigPath) Setzt den angegebenen Konfigurationspfad.voidsetContentType(String newContentType) Setzt den angegebenen ContentType.voidsetDownloadFile(String fileName, String contentType) Setzt den Namen und den ContentType der Datei, die zurückgeliefert wird.voidSetzt die GUID des ELO Objekts zu diesem RulesetvoidsetiDateFrom(String value) Setzt die Sucheinschränkung für das interne AblagedatumvoidsetiDateTo(String value) Setzt die Sucheinschränkung für das interne AblagedatumvoidsetIncludes(ArrayList<String> newIncludes) Setzt die angegebene Liste mit den zu ladenden Modulen.voidsetInterval(Intervall value) Setzt die Intervall Definition zum Ruleset.voidsetJScript(String jScript) Speichert den zum Ruleset compilierten JavaScript Code.voidSetzt die angegebene Liste mit den zusätzlichen Ablagemasken.voidsetMoreResults(boolean value) Setzt das Flag, ob es weitere Treffer in der Suchliste gibt.voidsetPaused(boolean paused) Setzt den Ruleset auf gestoppt oder laufend.voidsetRuleReport(RuleReport ruleReport) Setzt das Objekt für den Regel-Report.voidSetzt die angegebene Liste mit den Regeln des aktuellen Rulesets.voidsetRulesetName(String value) Setzt den Namen des Rulesets.voidsetScriptOnEnd(String value) Setzt den JavaScript Code für die Ende Operation.voidsetScriptOnStart(String value) Setzt den JavaScript Code für die Start Operation.voidsetScriptStatus(String status) Setzt den Wert des SkriptStatus auf einen neuen Wert.voidsetSearchMask(String maskId) Setzt die definierte SuchmaskevoidsetSearchMaskGuid(String maskIdText) Setzt den Namen oder die Id der Suchmaske.voidsetSearchMax(int count) Setzt die definierte ResultSet GrößevoidsetSearchMax(String countText) Setzt die definierte ResultSet GrößevoidsetSearchName(String value) Setzt den Namen der Such-IndexzeilevoidsetSearchValue(String value) Setzt den Inhalt der Such-IndexzeilevoidsetStatusMessage(String value) Setzt die angegebene Statusnachricht.voidSetzt die Statusnachricht auf den Fehlerzustand.voidsetValidRuleset(boolean validRuleset) Setzt die angegebene Eigenschaft für die Gültigkeit des Regelsatzes.voidsetxDateFrom(String value) Setzt die Sucheinschränkung für das DokumentendatumvoidsetxDateTo(String value) Setzt die Sucheinschränkung für das DokumentendatumvoidstartElement(String uri, String localName, String qName, Attributes atts) XML Callback, hier wird das key-Tag ausgewertet.voidstop()Setzt das Stop Flag im Ruleset damit die JavaScript Libs ihre internen Schleifen beenden.booleanGibt 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, warningMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.xml.sax.ContentHandler
declaration
-
Field Details
-
RULE_ACTIVE_MARKER
- See Also:
-
RULE_ERROR_MARKER
- See Also:
-
-
Constructor Details
-
Ruleset
public Ruleset(IXconnect ixConnect, String tempDir, byte[] xmlText, MaskInfo maskInfo) throws SAXException XML Datenstrom einlesen- Parameters:
ixConnect- Indexserver-VerbindungtempDir- Temporäres VerzeichnisxmlText- das Byte-Array mit den XML-Daten vom ClientmaskInfo- Objekt mit den Maskeninformationen- Throws:
SAXException- bei Parser-Fehlern
-
Ruleset
public Ruleset()Erzeugt einen neuen leeren Ruleset
-
-
Method Details
-
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
Setzt den Wert des SkriptStatus auf einen neuen Wert.- Parameters:
status- neuer Wert
-
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
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 Ruleset gestoppt ist oder läuft.- Returns:
- Ruleset ist 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) Setzt die angegebene Eigenschaft für die Gültigkeit des Regelsatzes.- Parameters:
validRuleset- Gültiger Regelsatz
-
invalidate
public void invalidate()Markiert den Ruleset als ungültig. -
getStatusMessage
Liefert die aktuelle Statusnachricht zurück.- Returns:
- Aktueller Status
-
setStatusMessage
Setzt die angegebene Statusnachricht.- Parameters:
value- Neuer Status
-
setToErrorState
public void setToErrorState()Setzt die Statusnachricht auf den Fehlerzustand. -
setDownloadFile
Setzt den Namen und den ContentType der Datei, die zurückgeliefert wird.- Parameters:
fileName- DateinamecontentType- ContentType
-
getDownloadFileName
Liefert den Namen der Datei, die zum Download angeboten wird.- Returns:
- Name der Download-Datei
-
getDownloadFileContentType
Liefert den ContentType der Datei, die zum Download angeboten wird.- Returns:
- ContentType der Download-Datei
-
getGuid
Liest die GUID des ELO Objekts zu diesem Ruleset- Returns:
- aktueller Status
-
setGuid
Setzt die GUID des ELO Objekts zu diesem Ruleset- Parameters:
value- Neuer Status
-
getRulesetName
Liefert den Namen des Rulesets zurück.- Returns:
- Name
-
setRulesetName
Setzt den Namen des Rulesets.- Parameters:
value- Neuer Name
-
setSearchName
Setzt den Namen der Such-Indexzeile- Parameters:
value- Neuer Name
-
setSearchValue
Setzt den Inhalt der Such-Indexzeile- Parameters:
value- Neuer Name
-
getMasksList
Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.- Returns:
- Ablagemasken
-
getMasks
Gibt das HashSet mit der Liste der zusätzlichen Ablagemasken zurück.- Returns:
- Ablagemasken
-
setMasks
Setzt die angegebene Liste mit den zusätzlichen Ablagemasken.- Parameters:
newMasks- Liste mit zusätzlichen Ablagemasken
-
getRules
Gibt die Liste der Regeln des aktuellen Rulesets zurück.- Returns:
- Regelliste
-
setRules
Setzt die angegebene Liste mit den Regeln des aktuellen Rulesets.- Parameters:
newRules- Liste mit den Regeln des Rulesets
-
getIncludes
Liefert die Liste mit den zu ladenden Modulen(Includes) zurück.- Returns:
- Liste mit den zu ladenden Modulen
-
setIncludes
Setzt die angegebene Liste mit den zu ladenden Modulen.- Parameters:
newIncludes- Liste mit den zu ladenden Modulen
-
getiDateFrom
Gibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.- Returns:
- Startdatum
-
getiDateTo
Gibt die aktuelle Einstellung der Sucheinschränkung für das interne Ablagedatum zurück.- Returns:
- Endedatum
-
getxDateFrom
Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.- Returns:
- Startdatum
-
getxDateTo
Gibt die aktuelle Einstellung der Sucheinschränkung für das Dokumentendatum zurück.- Returns:
- Endedatum
-
setiDateFrom
Setzt die Sucheinschränkung für das interne Ablagedatum- Parameters:
value- Startdatum
-
setiDateTo
Setzt die Sucheinschränkung für das interne Ablagedatum- Parameters:
value- Endedatum
-
setxDateFrom
Setzt die Sucheinschränkung für das Dokumentendatum- Parameters:
value- Startdatum
-
setxDateTo
Setzt die Sucheinschränkung für das Dokumentendatum- Parameters:
value- Endedatum
-
getInterval
Gibt das Intervall Objekt für die Wiederholungsrate zurück.- Returns:
- Intervall
-
setInterval
Setzt die Intervall Definition zum Ruleset.- Parameters:
value- Intervall
-
getContentType
Liefert den ContentType zurück.- Returns:
- ContentType
-
setContentType
Setzt den angegebenen ContentType.- Parameters:
newContentType- ContentType
-
getRuleReport
Liefert das Objekt für den Regel-Report zurück.- Returns:
- Objekt für den Regel-Report
-
setRuleReport
Setzt das Objekt für den Regel-Report.- Parameters:
ruleReport- Objekt für den Regel-Report
-
setConfigName
Setzt die angegebene Bezeichnung der Konfiguration- Parameters:
newConfigName- Bezeichnung der Konfiguration
-
getConfigName
Liefert die Bezeichnung der Konfiguration zurück.- Returns:
- Bezeichnung der Konfiguration
-
setConfigPath
Setzt den angegebenen Konfigurationspfad.- Parameters:
newConfigPath- Konfigurationspfad
-
getConfigPath
Liefert den Konfigurationspfad zurück.- Returns:
- Konfigurationspfad
-
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
Setzt den JavaScript Code für die Start Operation.- Parameters:
value- JavaScript Code
-
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
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
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
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
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
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
Liefert die GUID der tatsächlichen Maske zurück- Returns:
- GUID der tatsächlichen Maske
-
setSearchMask
Setzt die definierte Suchmaske- Parameters:
maskId- Maskennummer
-
setSearchMaskGuid
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
Setzt die definierte ResultSet Größe- Parameters:
countText- Anzahl
-
addRule
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 Regelposition- Position
-
moveRule
public void moveRule(int indexFrom, int indexTo) Verschiebt eine Regel an eine andere Stelle- Parameters:
indexFrom- Index der zu verschiebenden RegelindexTo- 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
Erzeugt die Startdefinition für den namespace sys- Returns:
- Text mit der Startdefinition
-
getEndSys
Erzeugt den Abschluss für den namespace "sys".- Returns:
- Text mit Abschluss
- Throws:
Exception
-
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(Integer userId, String param1, String param2, String param3) throws Exception Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.- Parameters:
userId- Benutzer IDparam1- Erstes Parameterparam2- Zweites Parameterparam3- Drittes Parameter- Throws:
Exception
-
addTrigger2
Nimmt einen weiteren Trigger aus einem "run" Aufruf in die Ausführungsliste auf.- Parameters:
triggerInfo- Objekt mit den Aufrufparametern- Throws:
Exception
-
getTrigger
Gibt das nächste verfügbare Trigger Objekt zurück.- Returns:
- Trigger Objekt oder null (kein weiteres Objekt verfügbar)
-
compileIndexVars
Erzeugt die JavaScript Zeilen für alle vorhandenen Indexzeilen aus der Suchmaske und allen angegebenen möglichen Zielmasken.- Parameters:
maskInfo- MaskendefinitionenmaskId- Suchmaske- Returns:
- JavaScript code
-
compileProcessRules
Erzeugt die JavaScript Funktion ProcessRules zum Aufruf aller Regeln- Returns:
- JavaScript Funktion
-
compileRule
Erzeugt den JavaScript Code zu einer Rule-Definition- Parameters:
ruleIndex- Regelindex- Returns:
- JavaScript Code der Regel
-
compileGetSetIndexLines
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- MaskendefinitionenmaskId- Suchmaske- Returns:
- JavaScript Code
-
compileBase
Erzeugt die Basisdeklarationen und Funktionen zu einer Rule.- Returns:
- Basisdeklarationen und Funktionen einer Regel
-
asXml
Gibt die XML-Struktur zum aktuellen Ruleset-Inhalt zurück.- Parameters:
currIxConnect- Indexserver-Verbindung- Returns:
- XML-Text
-
startElement
public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException XML Callback, hier wird das key-Tag ausgewertet.- Specified by:
startElementin interfaceContentHandler- Overrides:
startElementin classDefaultHandler- Parameters:
uri- siehe Klasse DefaultHandlerlocalName- siehe Klasse DefaultHandlerqName- siehe Klasse DefaultHandleratts- siehe Klasse DefaultHandler- Throws:
SAXException- bei Fehlern
-
endElement
- Specified by:
endElementin interfaceContentHandler- Overrides:
endElementin classDefaultHandler- Throws:
SAXException
-
characters
public void characters(char[] ch, int start, int len) - Specified by:
charactersin interfaceContentHandler- Overrides:
charactersin classDefaultHandler
-