- Erstellt von Redakteur7 am Feb. 16, 2021
Semantik
<releaseresource> gibt eine Ressource, die zuvor mit <fetchresource> gebunden wurde, manuell wieder frei. Dadurch entfällt die Bindung an die Ressource im Speicher. Nach Aufruf von <releaseresource> ist die betreffende Ressource nicht weiter verwendbar.
Attribute
Attributname | Datentyp | Beschreibung | Mögliche Werte | Standardwert | Obligatorisch? |
---|---|---|---|---|---|
resource | FETCHEDRESOURCE | Die ID der <fetchresource>, deren Ressource freigegeben werden soll. | ID einer existierenden Ressource. | — |
Subelemente / Inhalt
Das <releaseresource>-Element besitzt keine Subelemente und kann keinen Inhalt enthalten.
Variablenbindungen
Das <releaseresource>-Element besitzt keine Variablenbindungen.
Beispiel
In folgendem Beispiel wird mit <fetchresource> die vom Spooler empfangene Datei an die id = "inputFile" gebunden. Über die Variablenbindungen .getFile().getAbsolutePath() wird der Pfad zur Datei in einem <param> gespeichert und dann verwendet. Anschließend wird die Datei umbenannt und direkt wieder an den Spooler zurückgeschickt. Zuletzt wird die Ressource mit <releaseresource> manuell freigegeben. Das Beispiel verwendet außerdem das <workdir>-, <exec>-, <param>-, <commandline>-, und <result>-Element.
<rcml> <process id="ExampleProcess" name="example process"> <!-- Arbeitsverzeichnis für den Prozess setzen. --> <workdir id="workdir" home="./WORK" /> <!-- Vom Spooler Ressource empfangen und an die id "inputFile" binden. --> <fetchresource id="inputFile" resource="${process['eoms.process.input']}" /> <exec id="RenameProcess" workdir="workdir"> <!-- Parameter anlegen: Pfad zur Ressource "inputFile". Dies muss über <param> geschehen! --> <param name="infile" value="${inputFile.getFile().getAbsolutePath()}" /> <!-- Parameter anlegen: Der neue Pfad mit neuem Namen. Dies muss über <param> geschehen! --> <param name="outfile" value="${workdir.getAbsolutePath() + '/cool_new_file'}" /> <!-- Ressource umbenennen in "cool_new_file"... --> <commandline processor="velocity">cmd move $infile $outfile </commandline> <!-- Bei Fehlern abbrechen. --> <result return-code="0" /> </exec> <!-- Umbenannte Datei samt komplettem Arbeitsverzeichnis an Spooler schicken. --> <upload file="workdir" destination="${process['eoms.process.output']}" /> <!-- Ressource manuell wieder freigeben. --> <releaseresource resource="inputFile" /> </process> </rcml>
Zweck:
Ressourcenfreigabe
Typ:
Standalone
Elternelement:
Top-Level-Elemente
Subelemente:
Nein
Variablenbindungen:
Nein
—
- Keine Stichwörter