From 730c157064742fdf531b734a9bc0b0f8cf71bc17 Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Wed, 22 Jul 2020 10:25:47 -0400 Subject: [PATCH] Introduce `ClientRSocketConnector.getRequester()` * Restore `Mono getRSocketRequester()` on `ClientRSocketConnector` and deprecate it in favor of newly introduced `RSocketRequester getRequester()`: there is no need in wrapping a `RSocketRequester` to deferred `Mono` since internal logic of the `RSocketRequester` on client side is based on lazy-load API of the `RSocketClient` --- .../rsocket/ClientRSocketConnector.java | 18 +++++++++++++++++- .../dsl/RSocketOutboundGatewaySpec.java | 2 +- .../outbound/RSocketOutboundGateway.java | 4 ++-- .../RSocketInboundGatewayIntegrationTests.java | 3 +-- 4 files changed, 21 insertions(+), 6 deletions(-) diff --git a/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/ClientRSocketConnector.java b/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/ClientRSocketConnector.java index 5e1c94773f..e648146494 100644 --- a/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/ClientRSocketConnector.java +++ b/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/ClientRSocketConnector.java @@ -29,6 +29,7 @@ import org.springframework.util.MimeType; import io.rsocket.transport.ClientTransport; import io.rsocket.transport.netty.client.TcpClientTransport; import io.rsocket.transport.netty.client.WebsocketClientTransport; +import reactor.core.publisher.Mono; /** * A client {@link AbstractRSocketConnector} extension to the RSocket connection. @@ -210,7 +211,22 @@ public class ClientRSocketConnector extends AbstractRSocketConnector { this.rsocketRequester.rsocketClient().source().subscribe(); } - public RSocketRequester getRSocketRequester() { + /** + * Return the {@link Mono} for the {@link RSocketRequester}. + * @return the {@link Mono} for the {@link RSocketRequester}. + * @deprecated since 5.4 in favor of {@link #getRequester()} + */ + @Deprecated + public Mono getRSocketRequester() { + return Mono.just(getRequester()); + } + + /** + * Return the {@link RSocketRequester} this connector is built on. + * @return the {@link RSocketRequester} this connector is built on. + * @since 5.4 + */ + public RSocketRequester getRequester() { return this.rsocketRequester; } diff --git a/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/dsl/RSocketOutboundGatewaySpec.java b/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/dsl/RSocketOutboundGatewaySpec.java index 48bf76437c..bc052ccdd2 100644 --- a/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/dsl/RSocketOutboundGatewaySpec.java +++ b/spring-integration-rsocket/src/main/java/org/springframework/integration/rsocket/dsl/RSocketOutboundGatewaySpec.java @@ -48,7 +48,7 @@ public class RSocketOutboundGatewaySpec extends MessageHandlerSpec