Вы можете фильтровать сообщения, полученные из полученных файлов, следующим образом:
Map<String, String> nsMap = new HashMap<String, String>();
nsMap.put( "ns", "http://myuri.com" );
from("file://path")
.filter().xpath("ns:serviceName eq 'enquiry'", nsMap )
.to(url);
Однако при этом будут извлечены все файлы и обработаны только те, которые вас интересуют.
Если вы ищете только для извлечения файлов, которые вы хотите обработать, и оставьте остальные в покое, я думаю, вам нужно будет реализовать объект GenericFileFilter и передать его компоненту Camel File2 с параметром filter
,Это не то, что я пробовал, и я подозреваю, что вам в конечном итоге придется прочитать и проанализировать файл, отфильтровать его, затем прочитать и снова проанализировать его по маршруту, что не будет очень эффективным.