Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,13 @@

package org.springframework.boot.gson.autoconfigure;

import java.util.List;
import java.util.function.Consumer;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.Strictness;

import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
Expand All @@ -47,9 +47,9 @@ public final class GsonAutoConfiguration {

@Bean
@ConditionalOnMissingBean
GsonBuilder gsonBuilder(List<GsonBuilderCustomizer> customizers) {
GsonBuilder gsonBuilder(ObjectProvider<GsonBuilderCustomizer> customizers) {
GsonBuilder builder = new GsonBuilder();
customizers.forEach((c) -> c.customize(builder));
customizers.orderedStream().forEach((c) -> c.customize(builder));
return builder;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,18 +99,12 @@ JacksonComponentModule jsonComponentModule() {
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
@ConditionalOnMissingBean
JsonMapper.Builder jsonMapperBuilder(List<JsonMapperBuilderCustomizer> customizers) {
JsonMapper.Builder jsonMapperBuilder(ObjectProvider<JsonMapperBuilderCustomizer> customizers) {
JsonMapper.Builder builder = JsonMapper.builder();
customize(builder, customizers);
customizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder;
}

private void customize(JsonMapper.Builder builder, List<JsonMapperBuilderCustomizer> customizers) {
for (JsonMapperBuilderCustomizer customizer : customizers) {
customizer.customize(builder);
}
}

@Bean
@Primary
@ConditionalOnMissingBean
Expand Down Expand Up @@ -200,18 +194,12 @@ CBORMapper cborMapper(CBORMapper.Builder builder) {
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
@ConditionalOnMissingBean
CBORMapper.Builder cborMapperBuilder(List<CborMapperBuilderCustomizer> customizers) {
CBORMapper.Builder cborMapperBuilder(ObjectProvider<CborMapperBuilderCustomizer> customizers) {
CBORMapper.Builder builder = CBORMapper.builder();
customize(builder, customizers);
customizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder;
}

private void customize(CBORMapper.Builder builder, List<CborMapperBuilderCustomizer> customizers) {
for (CborMapperBuilderCustomizer customizer : customizers) {
customizer.customize(builder);
}
}

@Bean
StandardCborMapperBuilderCustomizer standardCborMapperBuilderCustomizer(JacksonProperties jacksonProperties,
ObjectProvider<JacksonModule> modules, JacksonCborProperties cborProperties) {
Expand Down Expand Up @@ -255,18 +243,12 @@ XmlMapper xmlMapper(XmlMapper.Builder builder) {
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
@ConditionalOnMissingBean
XmlMapper.Builder xmlMapperBuilder(List<XmlMapperBuilderCustomizer> customizers) {
XmlMapper.Builder xmlMapperBuilder(ObjectProvider<XmlMapperBuilderCustomizer> customizers) {
XmlMapper.Builder builder = XmlMapper.builder();
customize(builder, customizers);
customizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder;
}

private void customize(XmlMapper.Builder builder, List<XmlMapperBuilderCustomizer> customizers) {
for (XmlMapperBuilderCustomizer customizer : customizers) {
customizer.customize(builder);
}
}

@Bean
StandardXmlMapperBuilderCustomizer standardXmlMapperBuilderCustomizer(JacksonProperties jacksonProperties,
ObjectProvider<JacksonModule> modules, JacksonXmlProperties xmlProperties) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,20 +157,14 @@ static class JacksonObjectMapperBuilderConfiguration {
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
@ConditionalOnMissingBean
org.springframework.http.converter.json.Jackson2ObjectMapperBuilder jackson2ObjectMapperBuilder(
ApplicationContext applicationContext, List<Jackson2ObjectMapperBuilderCustomizer> customizers) {
ApplicationContext applicationContext,
ObjectProvider<Jackson2ObjectMapperBuilderCustomizer> customizers) {
org.springframework.http.converter.json.Jackson2ObjectMapperBuilder builder = new org.springframework.http.converter.json.Jackson2ObjectMapperBuilder();
builder.applicationContext(applicationContext);
customize(builder, customizers);
customizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder;
}

private void customize(org.springframework.http.converter.json.Jackson2ObjectMapperBuilder builder,
List<Jackson2ObjectMapperBuilderCustomizer> customizers) {
for (Jackson2ObjectMapperBuilderCustomizer customizer : customizers) {
customizer.customize(builder);
}
}

}

@Configuration(proxyBeanMethods = false)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@

package org.springframework.boot.kotlinx.serialization.json.autoconfigure;

import java.util.List;
import java.util.function.Consumer;

import kotlin.Unit;
Expand All @@ -26,6 +25,7 @@
import kotlinx.serialization.json.JsonKt;
import kotlinx.serialization.json.JsonNamingStrategy;

import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
Expand All @@ -48,9 +48,9 @@ public final class KotlinxSerializationJsonAutoConfiguration {

@Bean
@ConditionalOnMissingBean
Json kotlinSerializationJson(List<KotlinxSerializationJsonBuilderCustomizer> customizers) {
Json kotlinSerializationJson(ObjectProvider<KotlinxSerializationJsonBuilderCustomizer> customizers) {
Function1<JsonBuilder, Unit> builderAction = (jsonBuilder) -> {
customizers.forEach((c) -> c.customize(jsonBuilder));
customizers.orderedStream().forEach((customizer) -> customizer.customize(jsonBuilder));
return Unit.INSTANCE;
};
return JsonKt.Json(Json.Default, builderAction);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ CompositeSpanHandler compositeSpanHandler(ObjectProvider<SpanExportingPredicate>
@Bean
@ConditionalOnMissingBean
Tracing braveTracing(Environment environment, List<SpanHandler> spanHandlers,
List<TracingCustomizer> tracingCustomizers, CurrentTraceContext currentTraceContext,
ObjectProvider<TracingCustomizer> tracingCustomizers, CurrentTraceContext currentTraceContext,
Factory propagationFactory, Sampler sampler) {
if (this.braveTracingProperties.isSpanJoiningSupported()) {
if (this.tracingProperties.getPropagation().getType() != null
Expand Down Expand Up @@ -128,9 +128,7 @@ Tracing braveTracing(Environment environment, List<SpanHandler> spanHandlers,
.sampler(sampler)
.localServiceName(applicationName);
spanHandlers.forEach(builder::addSpanHandler);
for (TracingCustomizer tracingCustomizer : tracingCustomizers) {
tracingCustomizer.customize(builder);
}
tracingCustomizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder.build();
}

Expand All @@ -143,12 +141,10 @@ brave.Tracer braveTracer(Tracing tracing) {
@Bean
@ConditionalOnMissingBean
CurrentTraceContext braveCurrentTraceContext(List<CurrentTraceContext.ScopeDecorator> scopeDecorators,
List<CurrentTraceContextCustomizer> currentTraceContextCustomizers) {
ObjectProvider<CurrentTraceContextCustomizer> currentTraceContextCustomizers) {
ThreadLocalCurrentTraceContext.Builder builder = ThreadLocalCurrentTraceContext.newBuilder();
scopeDecorators.forEach(builder::addScopeDecorator);
for (CurrentTraceContextCustomizer currentTraceContextCustomizer : currentTraceContextCustomizers) {
currentTraceContextCustomizer.customize(builder);
}
currentTraceContextCustomizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder.build();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,6 @@

package org.springframework.boot.resttestclient.autoconfigure;

import java.util.List;

import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.autoconfigure.AutoConfiguration;
Expand Down Expand Up @@ -53,9 +51,9 @@ SpringBootRestTestClientBuilderCustomizer springBootRestTestClientBuilderCustomi
@Bean
@ConditionalOnMissingBean
RestTestClient restTestClient(WebApplicationContext applicationContext,
List<RestTestClientBuilderCustomizer> customizers) {
ObjectProvider<RestTestClientBuilderCustomizer> customizers) {
RestTestClient.Builder<?> builder = getBuilder(applicationContext);
customizers.forEach((customizer) -> customizer.customize(builder));
customizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder.build();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,10 @@ SpringBootWebTestClientBuilderCustomizer springBootWebTestClientBuilderCustomize

@Bean
@ConditionalOnMissingBean
WebTestClient webTestClient(ApplicationContext applicationContext, List<WebTestClientBuilderCustomizer> customizers,
List<MockServerConfigurer> configurers) {
WebTestClient webTestClient(ApplicationContext applicationContext,
ObjectProvider<WebTestClientBuilderCustomizer> customizers, List<MockServerConfigurer> configurers) {
WebTestClient.Builder builder = getBuilder(applicationContext, configurers);
customizers.forEach((customizer) -> customizer.customize(builder));
customizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
return builder.build();
}

Expand Down