2017-06-15 131 views
0

駱駝路由讀取文件。其實兩個,並通過聚合來組合它們。這些是在一個routebuilder中的多條路線。但是這個問題可以追溯到一條路線。Apache Camel文件輸入刪除目錄

我掃描類似「/foo/bar/bar.xml」的文件。 在路由之後或在其結尾處,我也想刪除父目錄「/ foo/bar」。因爲它是爲bar.xml和bar_1.xml創建的......

我創建了一個處理器來執行此操作。但即使在最後的路線中,該目錄仍然不是空的。在路由之後,該目錄是空的。

我該怎麼做?有文件刪除選項。但我無法刪除它的父目錄。

該路線從activiti調用它有幫助。

感謝輸入 托馬斯

回答

0

你需要的是onCompletion構建。事情是這樣的:

<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> 

你可以閱讀更多關於它here