Skip to content

Commit 2f8668d

Browse files
cppwfsfmbenhassine
authored andcommitted
Add native hints for Spring Batch
Issue #4187
1 parent f20942e commit 2f8668d

File tree

2 files changed

+46
-0
lines changed

2 files changed

+46
-0
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
/*
2+
* Copyright 2022-2022 the original author or authors.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* https://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
package org.springframework.batch.core.aot;
17+
18+
import org.springframework.aop.SpringProxy;
19+
import org.springframework.aop.framework.Advised;
20+
import org.springframework.aot.hint.RuntimeHints;
21+
import org.springframework.aot.hint.RuntimeHintsRegistrar;
22+
import org.springframework.aot.hint.TypeReference;
23+
import org.springframework.core.DecoratingProxy;
24+
25+
/**
26+
* {@link RuntimeHintsRegistrar} for Spring Batch core module.
27+
*
28+
* @author Glenn Renfro
29+
* @since 5.0
30+
*/
31+
public class CoreRuntimeHints implements RuntimeHintsRegistrar {
32+
33+
@Override
34+
public void registerHints(RuntimeHints hints, ClassLoader classLoader) {
35+
36+
hints.resources().registerPattern("org/springframework/batch/core/schema-h2.sql");
37+
38+
hints.proxies()
39+
.registerJdkProxy(builder -> builder
40+
.proxiedInterfaces(TypeReference.of("org.springframework.batch.core.repository.JobRepository"))
41+
.proxiedInterfaces(SpringProxy.class, Advised.class, DecoratingProxy.class));
42+
43+
}
44+
45+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
org.springframework.aot.hint.RuntimeHintsRegistrar=org.springframework.batch.core.aot.CoreRuntimeHints

0 commit comments

Comments
 (0)