Skip to content

Commit 98030f3

Browse files
committed
Avoid unnecessary copy of cookies map in DefaultWebClientBuilder
See gh-25034
1 parent f3d4df2 commit 98030f3

File tree

1 file changed

+7
-17
lines changed

1 file changed

+7
-17
lines changed

spring-webflux/src/main/java/org/springframework/web/reactive/function/client/DefaultWebClientBuilder.java

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -223,8 +223,8 @@ public WebClient.Builder exchangeStrategies(ExchangeStrategies strategies) {
223223
return this;
224224
}
225225

226-
@SuppressWarnings("deprecation")
227226
@Override
227+
@Deprecated
228228
public WebClient.Builder exchangeStrategies(Consumer<ExchangeStrategies.Builder> configurer) {
229229
if (this.strategiesConfigurers == null) {
230230
this.strategiesConfigurers = new ArrayList<>(4);
@@ -260,8 +260,8 @@ public WebClient build() {
260260
.map(filter -> filter.apply(exchange))
261261
.orElse(exchange) : exchange);
262262
return new DefaultWebClient(filteredExchange, initUriBuilderFactory(),
263-
this.defaultHeaders != null ? unmodifiableCopy(this.defaultHeaders) : null,
264-
this.defaultCookies != null ? unmodifiableCopy(this.defaultCookies) : null,
263+
this.defaultHeaders != null ? HttpHeaders.readOnlyHttpHeaders(this.defaultHeaders) : null,
264+
this.defaultCookies != null ? CollectionUtils.unmodifiableMultiValueMap(this.defaultCookies) : null,
265265
this.defaultRequest, new DefaultWebClientBuilder(this));
266266
}
267267

@@ -280,12 +280,10 @@ else if (jettyClientPresent) {
280280

281281
private ExchangeStrategies initExchangeStrategies() {
282282
if (CollectionUtils.isEmpty(this.strategiesConfigurers)) {
283-
return this.strategies != null ? this.strategies : ExchangeStrategies.withDefaults();
283+
return (this.strategies != null ? this.strategies : ExchangeStrategies.withDefaults());
284284
}
285-
286285
ExchangeStrategies.Builder builder =
287-
this.strategies != null ? this.strategies.mutate() : ExchangeStrategies.builder();
288-
286+
(this.strategies != null ? this.strategies.mutate() : ExchangeStrategies.builder());
289287
this.strategiesConfigurers.forEach(configurer -> configurer.accept(builder));
290288
return builder.build();
291289
}
@@ -294,18 +292,10 @@ private UriBuilderFactory initUriBuilderFactory() {
294292
if (this.uriBuilderFactory != null) {
295293
return this.uriBuilderFactory;
296294
}
297-
DefaultUriBuilderFactory factory = this.baseUrl != null ?
298-
new DefaultUriBuilderFactory(this.baseUrl) : new DefaultUriBuilderFactory();
295+
DefaultUriBuilderFactory factory = (this.baseUrl != null ?
296+
new DefaultUriBuilderFactory(this.baseUrl) : new DefaultUriBuilderFactory());
299297
factory.setDefaultUriVariables(this.defaultUriVariables);
300298
return factory;
301299
}
302300

303-
private static HttpHeaders unmodifiableCopy(HttpHeaders headers) {
304-
return HttpHeaders.readOnlyHttpHeaders(headers);
305-
}
306-
307-
private static <K, V> MultiValueMap<K, V> unmodifiableCopy(MultiValueMap<K, V> map) {
308-
return CollectionUtils.unmodifiableMultiValueMap(new LinkedMultiValueMap<>(map));
309-
}
310-
311301
}

0 commit comments

Comments
 (0)