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


 

AttributnameDatentypBeschreibungMögliche WerteStandardwertObligatorisch?
resourceFETCHEDRESOURCEDie ID der <fetchresource>, deren Ressource freigegeben werden soll.ID einer existierenden Ressource.

(Haken)

 

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