From aaffb8b27ed697f51bfd5b3cbe847f4da87bdad0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Deleuze?= Date: Thu, 1 Sep 2022 17:59:43 +0200 Subject: [PATCH] Move BindingReflectionHintsRegistrar to spring-core See gh-28979 --- spring-context/spring-context.gradle | 2 -- spring-core/spring-core.gradle | 2 ++ .../annotation}/BindingReflectionHintsRegistrar.java | 10 +++++----- .../BindingReflectionHintsRegistrarTests.java | 2 +- .../KotlinBindingReflectionHintsRegistrarTests.kt | 2 +- .../annotation/MessageMappingReflectiveProcessor.java | 2 +- .../annotation/RequestMappingReflectiveProcessor.java | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) rename {spring-context/src/main/java/org/springframework/context/aot => spring-core/src/main/java/org/springframework/aot/hint/annotation}/BindingReflectionHintsRegistrar.java (94%) rename {spring-context/src/test/java/org/springframework/context/aot => spring-core/src/test/java/org/springframework/aot/hint/annotation}/BindingReflectionHintsRegistrarTests.java (99%) rename {spring-context/src/test/kotlin/org/springframework/context/aot => spring-core/src/test/kotlin/org/springframework/aot/hint/annotation}/KotlinBindingReflectionHintsRegistrarTests.kt (98%) diff --git a/spring-context/spring-context.gradle b/spring-context/spring-context.gradle index d7e366331b..b038d42892 100644 --- a/spring-context/spring-context.gradle +++ b/spring-context/spring-context.gradle @@ -1,7 +1,6 @@ description = "Spring Context" apply plugin: "kotlin" -apply plugin: "kotlinx-serialization" dependencies { api(project(":spring-aop")) @@ -33,7 +32,6 @@ dependencies { testImplementation("org.apache.commons:commons-pool2") testImplementation("org.awaitility:awaitility") testImplementation("jakarta.inject:jakarta.inject-tck") - testImplementation("org.jetbrains.kotlinx:kotlinx-serialization-json") testRuntimeOnly("jakarta.xml.bind:jakarta.xml.bind-api") testRuntimeOnly("org.glassfish:jakarta.el") // Substitute for javax.management:jmxremote_optional:1.0.1_04 (not available on Maven Central) diff --git a/spring-core/spring-core.gradle b/spring-core/spring-core.gradle index 2fcecee953..25c6f7ce78 100644 --- a/spring-core/spring-core.gradle +++ b/spring-core/spring-core.gradle @@ -4,6 +4,7 @@ import org.springframework.build.shadow.ShadowSource description = "Spring Core" apply plugin: "kotlin" +apply plugin: "kotlinx-serialization" def javapoetVersion = "1.13.0" def objenesisVersion = "3.2" @@ -90,6 +91,7 @@ dependencies { testFixturesImplementation("org.assertj:assertj-core") testFixturesImplementation("org.xmlunit:xmlunit-assertj") testFixturesImplementation("io.projectreactor:reactor-test") + testImplementation("org.jetbrains.kotlinx:kotlinx-serialization-json") } jar { diff --git a/spring-context/src/main/java/org/springframework/context/aot/BindingReflectionHintsRegistrar.java b/spring-core/src/main/java/org/springframework/aot/hint/annotation/BindingReflectionHintsRegistrar.java similarity index 94% rename from spring-context/src/main/java/org/springframework/context/aot/BindingReflectionHintsRegistrar.java rename to spring-core/src/main/java/org/springframework/aot/hint/annotation/BindingReflectionHintsRegistrar.java index 066d5f5d08..6df176ab88 100644 --- a/spring-context/src/main/java/org/springframework/context/aot/BindingReflectionHintsRegistrar.java +++ b/spring-core/src/main/java/org/springframework/aot/hint/annotation/BindingReflectionHintsRegistrar.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.context.aot; +package org.springframework.aot.hint.annotation; import java.beans.BeanInfo; import java.beans.IntrospectionException; @@ -40,10 +40,10 @@ import org.springframework.util.ClassUtils; /** * Register the necessary reflection hints so that the specified type can be - * bound at runtime. Fields, constructors and property methods are registered, - * except for a set of types like those in the {@code java.} package where just - * the type is registered. Types are discovered transitively and generic types - * are registered as well. + * bound at runtime. Fields, constructors, properties and record components + * are registered, except for a set of types like those in the {@code java.} + * package where just the type is registered. + * Types are discovered transitively and generic type are registered as well. * * @author Sebastien Deleuze * @since 6.0 diff --git a/spring-context/src/test/java/org/springframework/context/aot/BindingReflectionHintsRegistrarTests.java b/spring-core/src/test/java/org/springframework/aot/hint/annotation/BindingReflectionHintsRegistrarTests.java similarity index 99% rename from spring-context/src/test/java/org/springframework/context/aot/BindingReflectionHintsRegistrarTests.java rename to spring-core/src/test/java/org/springframework/aot/hint/annotation/BindingReflectionHintsRegistrarTests.java index d3d4b4de38..3e9713e5ca 100644 --- a/spring-context/src/test/java/org/springframework/context/aot/BindingReflectionHintsRegistrarTests.java +++ b/spring-core/src/test/java/org/springframework/aot/hint/annotation/BindingReflectionHintsRegistrarTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.context.aot; +package org.springframework.aot.hint.annotation; import java.lang.reflect.Type; import java.util.List; diff --git a/spring-context/src/test/kotlin/org/springframework/context/aot/KotlinBindingReflectionHintsRegistrarTests.kt b/spring-core/src/test/kotlin/org/springframework/aot/hint/annotation/KotlinBindingReflectionHintsRegistrarTests.kt similarity index 98% rename from spring-context/src/test/kotlin/org/springframework/context/aot/KotlinBindingReflectionHintsRegistrarTests.kt rename to spring-core/src/test/kotlin/org/springframework/aot/hint/annotation/KotlinBindingReflectionHintsRegistrarTests.kt index c59c8fc01d..45357a4e06 100644 --- a/spring-context/src/test/kotlin/org/springframework/context/aot/KotlinBindingReflectionHintsRegistrarTests.kt +++ b/spring-core/src/test/kotlin/org/springframework/aot/hint/annotation/KotlinBindingReflectionHintsRegistrarTests.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.context.aot +package org.springframework.aot.hint.annotation import org.assertj.core.api.Assertions.assertThat import org.assertj.core.api.ThrowingConsumer diff --git a/spring-messaging/src/main/java/org/springframework/messaging/handler/annotation/MessageMappingReflectiveProcessor.java b/spring-messaging/src/main/java/org/springframework/messaging/handler/annotation/MessageMappingReflectiveProcessor.java index 22d9a2741e..fc3c53bdaa 100644 --- a/spring-messaging/src/main/java/org/springframework/messaging/handler/annotation/MessageMappingReflectiveProcessor.java +++ b/spring-messaging/src/main/java/org/springframework/messaging/handler/annotation/MessageMappingReflectiveProcessor.java @@ -24,8 +24,8 @@ import java.security.Principal; import org.springframework.aot.hint.ExecutableMode; import org.springframework.aot.hint.ReflectionHints; +import org.springframework.aot.hint.annotation.BindingReflectionHintsRegistrar; import org.springframework.aot.hint.annotation.ReflectiveProcessor; -import org.springframework.context.aot.BindingReflectionHintsRegistrar; import org.springframework.core.MethodParameter; import org.springframework.lang.Nullable; import org.springframework.messaging.Message; diff --git a/spring-web/src/main/java/org/springframework/web/bind/annotation/RequestMappingReflectiveProcessor.java b/spring-web/src/main/java/org/springframework/web/bind/annotation/RequestMappingReflectiveProcessor.java index 1121cbb1d4..8b560050c8 100644 --- a/spring-web/src/main/java/org/springframework/web/bind/annotation/RequestMappingReflectiveProcessor.java +++ b/spring-web/src/main/java/org/springframework/web/bind/annotation/RequestMappingReflectiveProcessor.java @@ -23,8 +23,8 @@ import java.lang.reflect.Type; import org.springframework.aot.hint.ExecutableMode; import org.springframework.aot.hint.ReflectionHints; +import org.springframework.aot.hint.annotation.BindingReflectionHintsRegistrar; import org.springframework.aot.hint.annotation.ReflectiveProcessor; -import org.springframework.context.aot.BindingReflectionHintsRegistrar; import org.springframework.core.MethodParameter; import org.springframework.core.annotation.AnnotatedElementUtils; import org.springframework.http.HttpEntity;