У меня есть проект, написанный на Apache Camel, в котором я получаю сообщения с одного маршрута и отправляю его на другой маршрут для прослушивания:
from("URI").bean(random1)
.wireTap("direct:wiretap")
.recipientList.method(random2, "random2Method");
from("direct:wiretap").routeId("WireTap")
.setProperty("filename", dynamicValueExpression)
.to("file://log-directory-name?fileName=/${date:now:yyyMMdd}/property[filename]")
Этот код работает абсолютно нормально и успешно прослушивает файлы.
Проблема в том, что этот код перезаписывает файл, если существует другой файл с таким же именем файла . Чего я хочу добиться - это проверить, существует ли файл и переименовывает ли он текущий (а не существующий) текущий файл, а затем прослушать его.
Я проверил документацию Camel и обнаружил, что что-то вроде fileExist = свойство Move и пользовательская файловая стратегия, которую, я думаю, я мог бы использовать (я могу ошибаться здесь). Но я не уверен, как именно это будет работать.
Итак, мой вопрос:
- Действительно ли возможно достичь того, чего я пытаюсь достичь?
- Если да, то может кто-нибудь, пожалуйста, дайте мне знать, как?