Skip to content

Commit d1bd771

Browse files
committed
Add native runtime hints for remote partitioning types
Resolves #4564
1 parent 765baa2 commit d1bd771

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

spring-batch-integration/src/main/java/org/springframework/batch/integration/aot/IntegrationRuntimeHints.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2023 the original author or authors.
2+
* Copyright 2023-2024 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -20,6 +20,9 @@
2020
import org.springframework.aot.hint.RuntimeHintsRegistrar;
2121
import org.springframework.batch.integration.chunk.ChunkRequest;
2222
import org.springframework.batch.integration.chunk.ChunkResponse;
23+
import org.springframework.batch.integration.partition.MessageChannelPartitionHandler;
24+
import org.springframework.batch.integration.partition.StepExecutionRequest;
25+
import org.springframework.batch.integration.partition.StepExecutionRequestHandler;
2326

2427
/**
2528
* AOT hints for Spring Batch integration module.
@@ -32,12 +35,16 @@ public class IntegrationRuntimeHints implements RuntimeHintsRegistrar {
3235
@Override
3336
public void registerHints(RuntimeHints hints, ClassLoader classLoader) {
3437
// reflection hints
35-
hints.reflection().registerType(ChunkRequest.class, MemberCategory.values());
36-
hints.reflection().registerType(ChunkResponse.class, MemberCategory.values());
38+
MemberCategory[] memberCategories = MemberCategory.values();
39+
hints.reflection().registerType(ChunkRequest.class, memberCategories);
40+
hints.reflection().registerType(ChunkResponse.class, memberCategories);
41+
hints.reflection().registerType(StepExecutionRequestHandler.class, memberCategories);
42+
hints.reflection().registerType(MessageChannelPartitionHandler.class, memberCategories);
3743

3844
// serialization hints
3945
hints.serialization().registerType(ChunkRequest.class);
4046
hints.serialization().registerType(ChunkResponse.class);
47+
hints.serialization().registerType(StepExecutionRequest.class);
4148
}
4249

4350
}

0 commit comments

Comments
 (0)