From 3be4c0a8932c6422c7a295e8e1e758e8af702fe1 Mon Sep 17 00:00:00 2001 From: rstoyanchev Date: Mon, 10 Jul 2023 09:10:14 +0100 Subject: [PATCH] Replace Void with void on exchange method See gh-30117 --- .../web/client/support/RestTemplateAdapter.java | 3 +-- .../service/invoker/AbstractReactorHttpExchangeAdapter.java | 6 +++--- .../web/service/invoker/HttpExchangeAdapter.java | 2 +- .../web/service/invoker/HttpServiceMethod.java | 5 ++++- .../web/service/invoker/TestHttpExchangeAdapter.java | 3 +-- 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/spring-web/src/main/java/org/springframework/web/client/support/RestTemplateAdapter.java b/spring-web/src/main/java/org/springframework/web/client/support/RestTemplateAdapter.java index 946006c080..496b9a133b 100644 --- a/spring-web/src/main/java/org/springframework/web/client/support/RestTemplateAdapter.java +++ b/spring-web/src/main/java/org/springframework/web/client/support/RestTemplateAdapter.java @@ -54,9 +54,8 @@ public final class RestTemplateAdapter implements HttpExchangeAdapter { } @Override - public Void exchange(HttpRequestValues requestValues) { + public void exchange(HttpRequestValues requestValues) { this.restTemplate.exchange(newRequest(requestValues), Void.class); - return null; } @Override diff --git a/spring-web/src/main/java/org/springframework/web/service/invoker/AbstractReactorHttpExchangeAdapter.java b/spring-web/src/main/java/org/springframework/web/service/invoker/AbstractReactorHttpExchangeAdapter.java index 7bf5541ed9..af9cd782a5 100644 --- a/spring-web/src/main/java/org/springframework/web/service/invoker/AbstractReactorHttpExchangeAdapter.java +++ b/spring-web/src/main/java/org/springframework/web/service/invoker/AbstractReactorHttpExchangeAdapter.java @@ -91,12 +91,12 @@ public abstract class AbstractReactorHttpExchangeAdapter } @Override - public Void exchange(HttpRequestValues requestValues) { + public void exchange(HttpRequestValues requestValues) { if (this.blockTimeout != null) { - return exchangeForMono(requestValues).block(this.blockTimeout); + exchangeForMono(requestValues).block(this.blockTimeout); } else { - return exchangeForMono(requestValues).block(); + exchangeForMono(requestValues).block(); } } diff --git a/spring-web/src/main/java/org/springframework/web/service/invoker/HttpExchangeAdapter.java b/spring-web/src/main/java/org/springframework/web/service/invoker/HttpExchangeAdapter.java index cd354d87c1..20d995f102 100644 --- a/spring-web/src/main/java/org/springframework/web/service/invoker/HttpExchangeAdapter.java +++ b/spring-web/src/main/java/org/springframework/web/service/invoker/HttpExchangeAdapter.java @@ -34,7 +34,7 @@ public interface HttpExchangeAdapter { * Perform the given request, and release the response content, if any. * @param requestValues the request to perform */ - Void exchange(HttpRequestValues requestValues); + void exchange(HttpRequestValues requestValues); /** * Perform the given request, release the response content, and return the diff --git a/spring-web/src/main/java/org/springframework/web/service/invoker/HttpServiceMethod.java b/spring-web/src/main/java/org/springframework/web/service/invoker/HttpServiceMethod.java index 42b2f7515d..f60b9c5ee2 100644 --- a/spring-web/src/main/java/org/springframework/web/service/invoker/HttpServiceMethod.java +++ b/spring-web/src/main/java/org/springframework/web/service/invoker/HttpServiceMethod.java @@ -301,7 +301,10 @@ final class HttpServiceMethod { Function responseFunction; if (actualReturnType.equals(void.class) || actualReturnType.equals(Void.class)) { - responseFunction = client::exchange; + responseFunction = requestValues -> { + client.exchange(requestValues); + return null; + }; } else if (actualReturnType.equals(HttpHeaders.class)) { responseFunction = request -> processResponse(client.exchangeForHeaders(request), diff --git a/spring-web/src/test/java/org/springframework/web/service/invoker/TestHttpExchangeAdapter.java b/spring-web/src/test/java/org/springframework/web/service/invoker/TestHttpExchangeAdapter.java index cf112152b3..913d548bee 100644 --- a/spring-web/src/test/java/org/springframework/web/service/invoker/TestHttpExchangeAdapter.java +++ b/spring-web/src/test/java/org/springframework/web/service/invoker/TestHttpExchangeAdapter.java @@ -59,9 +59,8 @@ public class TestHttpExchangeAdapter implements HttpExchangeAdapter, TestAdapter } @Override - public Void exchange(HttpRequestValues requestValues) { + public void exchange(HttpRequestValues requestValues) { saveInput("void", requestValues, null); - return null; } @Override