diff --git a/spring-web/src/main/java/org/springframework/web/client/AsyncRestTemplate.java b/spring-web/src/main/java/org/springframework/web/client/AsyncRestTemplate.java index d110fe5d6a..7916e31195 100644 --- a/spring-web/src/main/java/org/springframework/web/client/AsyncRestTemplate.java +++ b/spring-web/src/main/java/org/springframework/web/client/AsyncRestTemplate.java @@ -44,6 +44,7 @@ import org.springframework.http.converter.HttpMessageConverter; import org.springframework.util.Assert; import org.springframework.util.concurrent.ListenableFuture; import org.springframework.util.concurrent.ListenableFutureAdapter; +import org.springframework.web.util.DefaultUriTemplateHandler; import org.springframework.web.util.UriTemplateHandler; /** @@ -150,6 +151,26 @@ public class AsyncRestTemplate extends InterceptingAsyncHttpAccessor implements return this.syncTemplate.getErrorHandler(); } + /** + * Configure default URI variable values. This is a shortcut for: + *
+ * + * DefaultUriTemplateHandler handler = new DefaultUriTemplateHandler(); + * handler.setDefaultUriVariables(...); + * + * AsyncRestTemplate restTemplate = new AsyncRestTemplate(); + * restTemplate.setUriTemplateHandler(handler); + *+ * @param defaultUriVariables the default URI variable values + * @since 4.3 + */ + public void setDefaultUriVariables(Map
+ * + * DefaultUriTemplateHandler handler = new DefaultUriTemplateHandler(); + * handler.setDefaultUriVariables(...); + * + * RestTemplate restTemplate = new RestTemplate(); + * restTemplate.setUriTemplateHandler(handler); + *+ * @param defaultUriVariables the default URI variable values + * @since 4.3 + */ + public void setDefaultUriVariables(Map
If set to {@code true} the URI template path is immediately decomposed
@@ -152,15 +176,23 @@ public class DefaultUriTemplateHandler implements UriTemplateHandler {
}
protected UriComponents expandAndEncode(UriComponentsBuilder builder, Map