Aws S3 Camel Route в Spring Boot запускается только при запуске приложения

У меня есть загрузочное приложение Spring, которое уже успешно использует Camel FTP. Теперь я пытаюсь реализовать использование Camel S3 для той же цели, что и для FTP: опросить каталог s3 в поисках нового файла, обработать его, затем переместить в другую папку (другую папку в случае успеха / неудачи)).

Я настроил свой маршрут следующим образом:

@Configuration
public class MyS3Route extends RouteBuilder {
    @Autowired private AwsProperties awsProperties;

    @Override
    public void configure() throws Exception {
        fromF("aws-s3://%s?accessKey=%s&secretKey=RAW(%s)&deleteAfterRead=false&prefix=process/&delay=10000",
                awsProperties.getBucket(),
                awsProperties.getAccessKey(),
                awsProperties.getSecret(),
            ).routeId(this.getClass().getName())
            .bean(MyS3Processor.class, "process");
    }
}

Эта установка правильно использует каждый файл в целевом каталоге s3 при запуске приложения, как и ожидалось. Однако, если новый файл появится в каталоге s3, я ожидаю, что он снова запустит MyS3Processor.process, в пределах конфигурации диапазона задержки.

Я проверил CamelContext, и есть некоторые конфигурации, подобные моей конечной точке FTP, такие как useFixedDelay и задержка.

Что мне не хватает?

0 ответов

Другие вопросы по тегам