Refactor ProcessScheduledJobsServiceCommand to dispose of processing jobs on shutdown

This commit is contained in:
Chris Eager
2024-09-24 13:18:28 -05:00
committed by Chris Eager
parent 946a486c4b
commit e20a4c1f77
4 changed files with 176 additions and 23 deletions

View File

@@ -136,7 +136,7 @@ public abstract class JobScheduler {
*
* @see #processJob(byte[])
*/
public CompletableFuture<Void> processAvailableJobs() {
public Mono<Void> processAvailableJobs() {
return Flux.from(dynamoDbAsyncClient.queryPaginator(QueryRequest.builder()
.tableName(tableName)
.keyConditionExpression("#schedulerName = :schedulerName AND #runAt <= :maxRunAt")
@@ -164,8 +164,7 @@ public abstract class JobScheduler {
return Mono.empty();
});
}, MAX_CONCURRENCY)
.then()
.toFuture();
.then();
}
private CompletableFuture<Void> deleteJob(final AttributeValue schedulerName, final AttributeValue runAt) {