Skip to content

Commit 81c156e

Browse files
committed
Replace public hasRestTemplateDefaults() method with hasBaseUri()
See gh-32180
1 parent d8c4a33 commit 81c156e

File tree

2 files changed

+23
-15
lines changed

2 files changed

+23
-15
lines changed

Diff for: spring-web/src/main/java/org/springframework/web/client/DefaultRestClientBuilder.java

+14-1
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ private static UriBuilderFactory getUriBuilderFactory(RestTemplate restTemplate)
195195
UriTemplateHandler uriTemplateHandler = restTemplate.getUriTemplateHandler();
196196
if (uriTemplateHandler instanceof DefaultUriBuilderFactory builderFactory) {
197197
// only reuse the DefaultUriBuilderFactory if it has been customized
198-
if (builderFactory.hasRestTemplateDefaults()) {
198+
if (hasRestTemplateDefaults(builderFactory)) {
199199
return null;
200200
}
201201
else {
@@ -210,6 +210,19 @@ else if (uriTemplateHandler instanceof UriBuilderFactory builderFactory) {
210210
}
211211
}
212212

213+
214+
/**
215+
* Indicate whether this {@code DefaultUriBuilderFactory} uses the default
216+
* {@link org.springframework.web.client.RestTemplate RestTemplate} settings.
217+
*/
218+
private static boolean hasRestTemplateDefaults(DefaultUriBuilderFactory factory) {
219+
// see RestTemplate::initUriTemplateHandler
220+
return (!factory.hasBaseUri() &&
221+
factory.getEncodingMode() == DefaultUriBuilderFactory.EncodingMode.URI_COMPONENT &&
222+
CollectionUtils.isEmpty(factory.getDefaultUriVariables()) &&
223+
factory.shouldParsePath());
224+
}
225+
213226
private static ClientHttpRequestFactory getRequestFactory(RestTemplate restTemplate) {
214227
ClientHttpRequestFactory requestFactory = restTemplate.getRequestFactory();
215228
if (requestFactory instanceof InterceptingClientHttpRequestFactory interceptingClientHttpRequestFactory) {

Diff for: spring-web/src/main/java/org/springframework/web/util/DefaultUriBuilderFactory.java

+9-14
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,15 @@ public DefaultUriBuilderFactory(UriComponentsBuilder baseUri) {
8383
}
8484

8585

86+
/**
87+
* Determine whether this factory has been configured with a base URI.
88+
* @since 6.1.4
89+
* @see #DefaultUriBuilderFactory()
90+
*/
91+
public final boolean hasBaseUri() {
92+
return (this.baseUri != null);
93+
}
94+
8695
/**
8796
* Set the {@link EncodingMode encoding mode} to use.
8897
* <p>By default this is set to {@link EncodingMode#TEMPLATE_AND_VALUES
@@ -157,20 +166,6 @@ public boolean shouldParsePath() {
157166
return this.parsePath;
158167
}
159168

160-
/**
161-
* Indicates whether this {@code DefaultUriBuilderFactory} uses the default
162-
* {@link org.springframework.web.client.RestTemplate RestTemplate}
163-
* settings.
164-
* @since 6.1.4
165-
*/
166-
public boolean hasRestTemplateDefaults() {
167-
// see RestTemplate::initUriTemplateHandler
168-
return this.baseUri == null &&
169-
this.encodingMode == EncodingMode.URI_COMPONENT &&
170-
CollectionUtils.isEmpty(this.defaultUriVariables) &&
171-
this.parsePath;
172-
}
173-
174169

175170
// UriTemplateHandler
176171

0 commit comments

Comments
 (0)