Я использую Apache Camel File2 (SFTP) (с Camel Последняя версия) и Java8 API.Я пытаюсь разработать класс MyRouteBuilder.java, который расширяет класс RouteBuilder и реализует метод configure.
Я хочу передать файлы из исходного пути в целевой путь.Здесь, в конечной точке источника, указание параметра URI «include» для включения файлов из определенных определенных подпапок в исходный путь, например «SubFolder1, SubFolder2, SubFolder3».
Пример исходных URI: 1) «file: \ src»\ SubFolder1 \. * \. Txt "2)" file: \ src \ SubFolder2 \. * \. Txt "
Я пробовал использовать несколько приведенных ниже примеров и даже примеров:
1) include=.SubFolder[1-2]\.*\.txt
2) include=.SubFolder1|SubFolder2\.*\.txt
3) include=SubFolder[1-2]\.*\.txt
4) include=SubFolder1\.*\.txt
5) include=.SubFolder(?)\.*\.txt
Ничего не работает.
Пожалуйста, предложите способ решения проблемы с использованием Apache Camel File2 API с использованием Java.
public void configure() throws Exception {
String sftpUrl = "sftp://" + user + "@" + hostName + sourcePath + "?" + "noop=true"
+ "&recursive=true&include=.*\\.txt$"+"&strictHostKeyChecking=no" + "&useUserKnownHostsFile=true" + "&password=RAW("
+ password + ")&preferredAuthentications=publickey,keyboard-interactive,password";
System.out.println("\n\n sftpUrl + " + sftpUrl + "\n\n");
from(sftpUrl)
.log(" Copying File : ${file:name} ").process(exchange -> {
System.out.println("1. Processing a File --> = " + exchange);
}).to("file://" + destPath)
// ;
.log("Uploading file ${file:parent} / ${file:name} complete.");
}