2017-06-15 3 views
0

eine Kamelroute liest eine Datei. Eigentlich zwei und kombinieren sie über Aggregation. Und dies sind mehrere Routen in einem Routenbauer. Das Problem kann jedoch auf eine Route reduziert werden.Apache Camel Dateieingabe Verzeichnis löschen

Ich scanne nach Datei wie "/ foo/bar/bar.xml". Nach der Route oder am Ende möchte ich auch das übergeordnete Verzeichnis "/ foo/bar" löschen. Weil es nur für bar.xml und bar_1.xml erstellt wurde ...

Ich habe einen Prozessor erstellt, um dies zu tun. Aber selbst auf der letzten Route ist das Verzeichnis noch nicht leer. Nach der Route ist das Verzeichnis leer.

Wie kann ich das tun? Es gibt Optionen zum Löschen von Dateien. Aber ich kann sein Elternverzeichnis nicht löschen.

Die Route wird von activiti aufgerufen, die hilft.

Dank für die Eingabe Thomas

Antwort

0

, was Sie brauchen onCompletion zu konstruieren ist. Etwas wie folgt aus:

<route> 
     <from uri="direct:fileInput"/> 
     <onCompletion> 
      <!--bean with the logic to delete the directory--> 
      <bean ref="dirDeletionBean" method="deleteDirectory"> 
     </onCompletion> 
     <process ref="myProcessor"/> 
     <to uri="rabbitmq...."/> 
    </route> 

Sie können mehr darüber lesen here