Enable RestClient.defaultRequest
This commit enables the defaultRequest setting in the RestClient builder. Closes gh-32028
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2023 the original author or authors.
|
||||
* Copyright 2002-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -99,6 +99,9 @@ final class DefaultRestClient implements RestClient {
|
||||
@Nullable
|
||||
private final HttpHeaders defaultHeaders;
|
||||
|
||||
@Nullable
|
||||
private final Consumer<RequestHeadersSpec<?>> defaultRequest;
|
||||
|
||||
private final List<StatusHandler> defaultStatusHandlers;
|
||||
|
||||
private final DefaultRestClientBuilder builder;
|
||||
@@ -116,6 +119,7 @@ final class DefaultRestClient implements RestClient {
|
||||
@Nullable List<ClientHttpRequestInitializer> initializers,
|
||||
UriBuilderFactory uriBuilderFactory,
|
||||
@Nullable HttpHeaders defaultHeaders,
|
||||
@Nullable Consumer<RequestHeadersSpec<?>> defaultRequest,
|
||||
@Nullable List<StatusHandler> statusHandlers,
|
||||
List<HttpMessageConverter<?>> messageConverters,
|
||||
ObservationRegistry observationRegistry,
|
||||
@@ -127,6 +131,7 @@ final class DefaultRestClient implements RestClient {
|
||||
this.interceptors = interceptors;
|
||||
this.uriBuilderFactory = uriBuilderFactory;
|
||||
this.defaultHeaders = defaultHeaders;
|
||||
this.defaultRequest = defaultRequest;
|
||||
this.defaultStatusHandlers = (statusHandlers != null ? new ArrayList<>(statusHandlers) : new ArrayList<>());
|
||||
this.messageConverters = messageConverters;
|
||||
this.observationRegistry = observationRegistry;
|
||||
@@ -451,6 +456,9 @@ final class DefaultRestClient implements RestClient {
|
||||
Observation observation = null;
|
||||
URI uri = null;
|
||||
try {
|
||||
if (DefaultRestClient.this.defaultRequest != null) {
|
||||
DefaultRestClient.this.defaultRequest.accept(this);
|
||||
}
|
||||
uri = initUri();
|
||||
HttpHeaders headers = initHeaders();
|
||||
ClientHttpRequest clientRequest = createRequest(uri);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2023 the original author or authors.
|
||||
* Copyright 2002-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -371,6 +371,7 @@ final class DefaultRestClientBuilder implements RestClient.Builder {
|
||||
return new DefaultRestClient(requestFactory,
|
||||
this.interceptors, this.initializers, uriBuilderFactory,
|
||||
defaultHeaders,
|
||||
this.defaultRequest,
|
||||
this.statusHandlers,
|
||||
messageConverters,
|
||||
this.observationRegistry,
|
||||
|
||||
Reference in New Issue
Block a user