This commit is contained in:
Rossen Stoyanchev 2017-06-27 18:28:50 -04:00
parent d728d597f2
commit 667437e300
5 changed files with 16 additions and 21 deletions

View File

@ -66,7 +66,7 @@ class DefaultWebTestClientBuilder implements WebTestClient.Builder {
"Either WebHttpHandlerBuilder or ClientHttpConnector must be provided");
this.webClientBuilder = (webClientBuilder != null ? webClientBuilder : WebClient.builder());
this.httpHandlerBuilder = (httpHandlerBuilder != null ? httpHandlerBuilder.cloneBuilder() : null);
this.httpHandlerBuilder = (httpHandlerBuilder != null ? httpHandlerBuilder.clone() : null);
this.connector = connector;
this.responseTimeout = responseTimeout;
}
@ -146,7 +146,7 @@ class DefaultWebTestClientBuilder implements WebTestClient.Builder {
new HttpHandlerConnector(this.httpHandlerBuilder.build()));
DefaultWebTestClientBuilder webTestClientBuilder = new DefaultWebTestClientBuilder(
this.webClientBuilder.cloneBuilder(), this.httpHandlerBuilder,
this.webClientBuilder.clone(), this.httpHandlerBuilder,
this.connector, this.responseTimeout);
return new DefaultWebTestClient(this.webClientBuilder,

View File

@ -384,9 +384,8 @@ public interface WebTestClient {
Builder responseTimeout(Duration timeout);
/**
*
* @param configurer
* @return
* Shortcut for pre-packaged customizations to WebTestClient builder.
* @param configurer the configurer to apply
*/
Builder apply(WebTestClientConfigurer configurer);

View File

@ -280,7 +280,8 @@ public class WebHttpHandlerBuilder {
* Clone this {@link WebHttpHandlerBuilder}.
* @return the cloned builder instance
*/
public WebHttpHandlerBuilder cloneBuilder() {
@Override
public WebHttpHandlerBuilder clone() {
return new WebHttpHandlerBuilder(this);
}

View File

@ -18,7 +18,6 @@ package org.springframework.web.reactive.function.client;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@ -92,11 +91,6 @@ class DefaultWebClientBuilder implements WebClient.Builder {
return this;
}
@Override
public WebClient.Builder cloneBuilder() {
return new DefaultWebClientBuilder(this);
}
@Override
public WebClient.Builder defaultUriVariables(Map<String, ?> defaultUriVariables) {
this.defaultUriVariables = defaultUriVariables;
@ -226,10 +220,6 @@ class DefaultWebClientBuilder implements WebClient.Builder {
}
}
private static <T> List<T> unmodifiableCopy(List<? extends T> list) {
return Collections.unmodifiableList(new ArrayList<>(list));
}
private UriBuilderFactory initUriBuilderFactory() {
if (this.uriBuilderFactory != null) {
return this.uriBuilderFactory;
@ -254,4 +244,9 @@ class DefaultWebClientBuilder implements WebClient.Builder {
}
}
@Override
public WebClient.Builder clone() {
return new DefaultWebClientBuilder(this);
}
}

View File

@ -192,11 +192,6 @@ public interface WebClient {
*/
Builder baseUrl(String baseUrl);
/**
* Clone this {@code WebClient.Builder}
*/
Builder cloneBuilder();
/**
* Configure default URI variable values that will be used when expanding
* URI templates using a {@link Map}.
@ -310,6 +305,11 @@ public interface WebClient {
*/
WebClient build();
/**
* Clone this {@code WebClient.Builder}
*/
Builder clone();
}