Start building against Spring Framework 7.0.0 snapshots

See gh-47825
This commit is contained in:
Stéphane Nicoll
2025-11-11 10:22:06 +00:00
committed by Andy Wilkinson
parent 721ba65888
commit 00f60da0de
8 changed files with 27 additions and 31 deletions
@@ -25,8 +25,8 @@ public class MyHttpMessageConvertersConfiguration {
@Bean
public ClientHttpMessageConvertersCustomizer myClientConvertersCustomizer() {
return (clientBuilder) -> clientBuilder.customMessageConverter(new AdditionalHttpMessageConverter())
.customMessageConverter(new AnotherHttpMessageConverter());
return (clientBuilder) -> clientBuilder.addCustomConverter(new AdditionalHttpMessageConverter())
.addCustomConverter(new AnotherHttpMessageConverter());
}
}
@@ -28,8 +28,8 @@ class MyHttpMessageConvertersConfiguration {
fun myClientConvertersCustomizer(): ClientHttpMessageConvertersCustomizer {
return ClientHttpMessageConvertersCustomizer { clientBuilder: HttpMessageConverters.ClientBuilder ->
clientBuilder
.customMessageConverter(AdditionalHttpMessageConverter())
.customMessageConverter(AnotherHttpMessageConverter())
.addCustomConverter(AdditionalHttpMessageConverter())
.addCustomConverter(AnotherHttpMessageConverter())
}
}
+1 -1
View File
@@ -20,7 +20,7 @@ mavenVersion=3.9.10
mockitoVersion=5.20.0
nativeBuildToolsVersion=0.11.2
snakeYamlVersion=2.5
springFrameworkVersion=7.0.0-RC3
springFrameworkVersion=7.0.0-SNAPSHOT
springFramework60xVersion=6.0.23
tomcatVersion=11.0.13
nullabilityPluginVersion=0.0.8
@@ -59,12 +59,6 @@ class ClientHttpRequestFactoryRuntimeHintsTests {
RuntimeHints hints = new RuntimeHints();
new ClientHttpRequestFactoryRuntimeHints().registerHints(hints, getClass().getClassLoader());
ReflectionHintsPredicates reflection = RuntimeHintsPredicates.reflection();
assertThat(reflection
.onMethodInvocation(method(HttpComponentsClientHttpRequestFactory.class, "setConnectTimeout", int.class)))
.accepts(hints);
assertThat(reflection.onMethodInvocation(
method(HttpComponentsClientHttpRequestFactory.class, "setConnectTimeout", Duration.class)))
.accepts(hints);
assertThat(reflection
.onMethodInvocation(method(HttpComponentsClientHttpRequestFactory.class, "setReadTimeout", int.class)))
.accepts(hints);
@@ -43,22 +43,22 @@ class DefaultClientHttpMessageConvertersCustomizer implements ClientHttpMessageC
@Override
public void customize(ClientBuilder builder) {
if (this.legacyConverters != null) {
this.legacyConverters.forEach(builder::customMessageConverter);
this.legacyConverters.forEach(builder::addCustomConverter);
}
else {
builder.registerDefaults();
this.converters.forEach((converter) -> {
if (converter instanceof StringHttpMessageConverter) {
builder.stringMessageConverter(converter);
builder.withStringConverter(converter);
}
else if (converter instanceof KotlinSerializationJsonHttpMessageConverter) {
builder.customMessageConverter(converter);
builder.addCustomConverter(converter);
}
else if (converter.getSupportedMediaTypes().contains(MediaType.APPLICATION_JSON)) {
builder.jsonMessageConverter(converter);
builder.withJsonConverter(converter);
}
else {
builder.customMessageConverter(converter);
builder.addCustomConverter(converter);
}
});
}
@@ -43,22 +43,22 @@ class DefaultServerHttpMessageConvertersCustomizer implements ServerHttpMessageC
@Override
public void customize(ServerBuilder builder) {
if (this.legacyConverters != null) {
this.legacyConverters.forEach(builder::customMessageConverter);
this.legacyConverters.forEach(builder::addCustomConverter);
}
else {
builder.registerDefaults();
this.converters.forEach((converter) -> {
if (converter instanceof StringHttpMessageConverter) {
builder.stringMessageConverter(converter);
builder.withStringConverter(converter);
}
else if (converter instanceof KotlinSerializationJsonHttpMessageConverter) {
builder.customMessageConverter(converter);
builder.addCustomConverter(converter);
}
else if (converter.getSupportedMediaTypes().contains(MediaType.APPLICATION_JSON)) {
builder.jsonMessageConverter(converter);
builder.withJsonConverter(converter);
}
else {
builder.customMessageConverter(converter);
builder.addCustomConverter(converter);
}
});
}
@@ -58,8 +58,8 @@ class HttpMessageConvertersTests {
assertThat(converterClasses).containsExactly(ByteArrayHttpMessageConverter.class,
StringHttpMessageConverter.class, ResourceHttpMessageConverter.class,
ResourceRegionHttpMessageConverter.class, AllEncompassingFormHttpMessageConverter.class,
JacksonJsonHttpMessageConverter.class, JacksonCborHttpMessageConverter.class,
JacksonXmlHttpMessageConverter.class);
KotlinSerializationJsonHttpMessageConverter.class, JacksonJsonHttpMessageConverter.class,
JacksonCborHttpMessageConverter.class, JacksonXmlHttpMessageConverter.class);
}
@Test
@@ -87,8 +87,8 @@ class HttpMessageConvertersTests {
GsonHttpMessageConverter converter1 = new GsonHttpMessageConverter();
HttpMessageConverters converters = new HttpMessageConverters(converter1);
Stream<Class<?>> converterClasses = converters.getConverters().stream().map(HttpMessageConverter::getClass);
assertThat(converterClasses).containsSequence(GsonHttpMessageConverter.class,
JacksonJsonHttpMessageConverter.class);
assertThat(converterClasses).containsSequence(KotlinSerializationJsonHttpMessageConverter.class,
GsonHttpMessageConverter.class, JacksonJsonHttpMessageConverter.class);
}
@Test
@@ -106,8 +106,8 @@ class HttpMessageConvertersTests {
KotlinSerializationJsonHttpMessageConverter converter2 = new KotlinSerializationJsonHttpMessageConverter();
HttpMessageConverters converters = new HttpMessageConverters(converter1, converter2);
Stream<Class<?>> converterClasses = converters.getConverters().stream().map(HttpMessageConverter::getClass);
assertThat(converterClasses).containsSequence(GsonHttpMessageConverter.class,
KotlinSerializationJsonHttpMessageConverter.class, JacksonJsonHttpMessageConverter.class);
assertThat(converterClasses).containsSequence(KotlinSerializationJsonHttpMessageConverter.class,
GsonHttpMessageConverter.class, JacksonJsonHttpMessageConverter.class);
}
@Test
@@ -147,7 +147,8 @@ class HttpMessageConvertersTests {
assertThat(converterClasses).containsExactly(ByteArrayHttpMessageConverter.class,
StringHttpMessageConverter.class, ResourceHttpMessageConverter.class,
ResourceRegionHttpMessageConverter.class, AllEncompassingFormHttpMessageConverter.class,
JacksonJsonHttpMessageConverter.class, JacksonCborHttpMessageConverter.class);
KotlinSerializationJsonHttpMessageConverter.class, JacksonJsonHttpMessageConverter.class,
JacksonCborHttpMessageConverter.class);
}
@Test
@@ -168,7 +169,8 @@ class HttpMessageConvertersTests {
}
assertThat(converterClasses).containsExactly(ByteArrayHttpMessageConverter.class,
StringHttpMessageConverter.class, ResourceHttpMessageConverter.class,
JacksonJsonHttpMessageConverter.class, JacksonCborHttpMessageConverter.class);
KotlinSerializationJsonHttpMessageConverter.class, JacksonJsonHttpMessageConverter.class,
JacksonCborHttpMessageConverter.class);
}
private List<HttpMessageConverter<?>> extractFormPartConverters(List<HttpMessageConverter<?>> converters) {
@@ -37,8 +37,8 @@ class HttpMessageConvertersRestClientCustomizerTests {
void customizeConfiguresMessageConverters() {
HttpMessageConverter<?> c0 = mock();
HttpMessageConverter<?> c1 = mock();
ClientHttpMessageConvertersCustomizer customizer = (clientBuilder) -> clientBuilder.customMessageConverter(c0)
.customMessageConverter(c1);
ClientHttpMessageConvertersCustomizer customizer = (clientBuilder) -> clientBuilder.addCustomConverter(c0)
.addCustomConverter(c1);
RestClient.Builder builder = RestClient.builder();
new HttpMessageConvertersRestClientCustomizer(customizer).customize(builder);