Как выставить маршрут как сервис, чтобы мы могли запускать или останавливать маршрут во время выполнения
У меня следующий маршрут класса
public class FileReaderRoute extends RouteBuilder {
@Override
public void configure() throws Exception {
from("file:{{file.encrypt.source}}?noop=true;delete=true")
.setProperty("fileName", simple("${in.header.CamelFileName}")).log("File Reader Route route started")
.to("direct:addSignatureRoute");
}
}
Я загрузил выше маршрут с помощью Springboot. Так что, если я запускаю приложение, начинайте маршрут и начинайте читать файлы в указанном месте.
Мое требование - запускать и останавливать маршрут во время выполнения, т.е. после запуска приложения. Маршрут должен быть запущен только в том случае, если я отправляю запрос в это приложение по требованию и останавливаю маршрут, отправляя запрос в работающее приложение.
1 ответ
Вы можете дать идентификатор для вашего маршрута:
from("file:...")
.id("myroute")
...
.autoStartUp(false);
И используйте этот идентификатор, чтобы остановить / запустить соответствующий маршрут:
camelContext.startRoute("myroute");