我有一個需求,我需要先使用mule請求者處理最舊的文件。從mule請求者的入站屬性我們得到時間戳。從那裏我們可以獲取file.But的時間,但如何處理它?有什麼方法可以使用mule請求者獲取最舊的文件嗎?
0
A
回答
0
你將需要一個自定義組件來做到這一點,因爲沒有辦法開箱即用(至少達到Mule 3.7.2)。
實際上,FileMessageRequester
調用FileMessageDispatcher.getNextFile
來檢索要在輪詢目錄中處理的下一個文件。此方法依賴於選擇要處理的第一個文件的私有方法,該方法不執行任何排序(也不提供任何選項來插入排序),如您所見here。
0
我找到了我的答案。這裏是代碼片段通過文件時間戳得到有序的mule消息。
DefaultMessageCollection test =(DefaultMessageCollection) message;
List<MuleMessage> theList = new ArrayList<MuleMessage>();
MuleMessage[] msg=test.getMessagesAsArray();
for (MuleMessage muleMessage : msg) {
theList.add(muleMessage);
}
Collections.sort(theList, new Comparator<MuleMessage>(){
public int compare(MuleMessage obj1, MuleMessage obj2) {
return ((Long)(obj1.getInboundProperty("timestamp"))).intValue()-((Long)(obj2.getInboundProperty("timestamp"))).intValue();
}
});
相關問題
- 1. 有什麼方法可以進行遞歸獲取請求嗎?
- 2. Mule請求者 - 無法移動文件
- 3. 在AWS Glacier中,有什麼方法可以減少文件的請求嗎?
- 4. 有什麼辦法可以使用Selenium開始POST請求嗎?
- 5. 有什麼辦法可以全局獲取腳本文件嗎?
- 6. 當使用mule請求者時,Mule Application沒有被部署文件
- 7. 有什麼辦法可以獲取servlet請求中的用戶數據?
- 8. 有什麼方法可以查看httpclient發送的原始請求嗎?
- 9. 有什麼辦法可以取消IOS中的IBM worklight請求嗎
- 10. 使用Twitter4j獲取關注者列表的最有效方法是什麼?
- 11. 有什麼方法可以反編譯grails/groovy jar文件嗎?
- 12. 有什麼辦法可以下載舊版本的appcompat庫嗎?
- 13. 有什麼方法可以使用命令行來調試ERB文件嗎?
- 14. 你可以在Angular中獲取獲取請求的內容嗎?
- 15. 有什麼辦法可以在.NET Core FilterAttribute中獲取請求體?
- 16. 有什麼辦法可以知道調用者類名嗎?
- 17. 使用Python 2.x中的urllib執行請求時,有什麼方法可以設置請求標頭?
- 18. 有什麼方法可以獲得一些信息,至少可以捕獲(...)嗎?
- 19. 有什麼方法可以在Rails-API中使用MiniProfiler嗎?
- 20. 在ASP.NET中,獲取請求的基礎URl的最快方法是什麼?
- 21. 使用參數在節點中獲取請求的最佳做法是什麼?
- 22. 有什麼方法可以改變UIBarButtonItem的文字顏色嗎?
- 23. Java文本屬性文件:有什麼方法可以測試合法性嗎?
- 24. 有什麼方法可以使用Apache POI來讀取.xls和.xlsx文件?
- 25. 有什麼工具可以區分HTTP請求/響應嗎?
- 26. 獲取/請求Session Symfony2的另一種方法是什麼?
- 27. 獲取Twitter Feed和避開請求限制的最簡單方法是什麼?
- 28. 有什麼方法可以打印出哪個配置文件可以使用?
- 29. 有什麼辦法可以用OllyDbg調試.COM文件嗎?
- 30. 有什麼方法可以獲取警報框的來源?
我可以使用攔截器類來修改排序嗎? – Anurag
是的,你可以,它是黑客行爲,但使用像Byteman這樣的工具可以讓你改變'FileMessageDispatcher.getFirstFile'的行爲,以便根據時間返回第一個。 –
我已經找到了使用端點提供的OlderFirstComparator的地方,但它並沒有先返回舊文件? – Anurag