我对Apache Camel有一个典型的任务:
from(properties.get(EVN.getFolderProperty()))
.onCompletion()
.log("Done")
.end()
.log("Start")
.split().tokenizeXML("Test")
.streaming()
.bean(xmlProcessor, "processOneRecord")
.aggregate(exchangeProperty("Some key"), xmlAggregationStrategy).copletionSize(100)
.bean(resultProcessor, "appendToResult");
所以我不想使用简单的完成策略之一 - 超时,大小。 相反 - 我需要一些状态变量,标题,属性在somthng中使用:
.aggregate(exchangeProperty("Some key"), xmlAggregationStrategy).completionPredicate("routeIsFinishFileProcessing" == true)
.bean(resultProcessor, "appendToResult");
答案 0 :(得分:0)
尝试使用simple
表达式,.completionPredicate(simple("${property.routeIsFinishFileProcessing == true}")
注意:您必须在需要时将property.routeIsFinishFileProcessing
设置为true