Я хочу добавить фильтр, чтобы пропустить обработку на основе некоторого условия.
Мой код маршрута верблюда.
from("direct:process-full-xml")
.routeId("process-full-xml")
.log("Processing xml file")
.unmarshal(new JaxbDataFormat("com.test.abc"))
.bean("testService", "truncateFull")
.split(beanExpression("testUnitService", "execute"))
.streaming()
.inOnly("jms:queue:testUnitFullQueue")
.choice()
.when(header("CamelSplitComplete"))
.log("Processing xml file completed");
Мой код Java:
public testUnitFullExtractor execute(Exchange exchange) {
int treeNodeSize = exchange.getIn().getBody(testTreesType.class) .getTreeNode().size();
return new testUnitFullExtractor(exchange.getIn().getBody(testTreesType.class));
}
Я хочу обрабатывать в соответствии с treeNodeSize.Должен ли я вернуть это число или некоторое логическое значение, если размер меньше 1000, и мне нужно добавить фильтр () в маршрут?