Верблюжий маршрут по префиксу имени файла

#java #apache-camel #sftp

#java #apache-camel #sftp

Вопрос:

У меня есть некоторый файл с расширениями

 DOA01022016.txt [which is date of admission]
PROFILE01022016.txt [which is student profile] amp;
RESULTS01022016.txt [which is students results]

So naming convention is PREFIXDDMMYYY.txt

from uri="sftp://10.10.101.10/tmp/admin/?username=adminamp;amp;password=admin123"
  

Используя camel, я пытаюсь использовать when --> choice --> simple --> contains --> Headers подход.

Как-то это не очень хороший подход к этому. Я также попробовал следующий файл Camel

Любой другой лучший способ использовать camel?

Ответ №1:

Вместо маршрутизации на основе содержимого вы должны просто использовать параметр ant pattern include в определениях маршрута FTP:

 from("sftp://10.10.101.10/tmp/admin/?username=adminamp;password=admin123amp;antInclude=**/DOA*.txt")
    .log("date of admission ${body}");

from("sftp://10.10.101.10/tmp/admin/?username=adminamp;password=admin123amp;antInclude=**/PROFILE*.txt")
    .log("student profile ${body}");

from("sftp://10.10.101.10/tmp/admin/?username=adminamp;password=admin123amp;antInclude=**/RESULTS*.txt")
    .log("results ${body}");