Add native image runtime hints.

We provide an initial set of runtime hints required to spin up data repositories on GraalVM native image.
Additionally we skip synthetic types during type inspection.

Original Pull Request: #2624
This commit is contained in:
Christoph Strobl
2022-06-07 14:33:39 +02:00
parent d8118de90f
commit 0262380d29
14 changed files with 220 additions and 62 deletions

View File

@@ -22,7 +22,9 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.aot.hint.annotation.Reflective;
import org.springframework.core.convert.converter.Converter;
import org.springframework.data.aot.PublicMethodReflectiveProcessor;
/**
* Annotation to clarify intended usage of a {@link Converter} as reading converter in case the conversion types leave
@@ -32,6 +34,7 @@ import org.springframework.core.convert.converter.Converter;
*/
@Target(TYPE)
@Documented
@Reflective({PublicMethodReflectiveProcessor.class})
@Retention(RetentionPolicy.RUNTIME)
public @interface ReadingConverter {

View File

@@ -22,7 +22,9 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.aot.hint.annotation.Reflective;
import org.springframework.core.convert.converter.Converter;
import org.springframework.data.aot.PublicMethodReflectiveProcessor;
/**
* Annotation to clarify intended usage of a {@link Converter} as writing converter in case the conversion types leave
@@ -32,6 +34,7 @@ import org.springframework.core.convert.converter.Converter;
*/
@Target(TYPE)
@Documented
@Reflective({PublicMethodReflectiveProcessor.class})
@Retention(RetentionPolicy.RUNTIME)
public @interface WritingConverter {