Skip to content

Commit 1d31b1c

Browse files
committed
Remove nested flatMap in RSocketFactory
1 parent e45327c commit 1d31b1c

1 file changed

Lines changed: 15 additions & 22 deletions

File tree

rsocket-core/src/main/java/io/rsocket/RSocketFactory.java

Lines changed: 15 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -228,28 +228,21 @@ public Mono<RSocket> start() {
228228
ackTimeout,
229229
missedAcks);
230230

231-
Mono<RSocket> wrappedRSocketClient =
232-
Mono.just(rSocketClient).map(plugins::applyClient);
233-
234-
DuplexConnection finalConnection = connection;
235-
return wrappedRSocketClient.flatMap(
236-
wrappedClientRSocket -> {
237-
RSocket unwrappedServerSocket = acceptor.get().apply(wrappedClientRSocket);
238-
239-
Mono<RSocket> wrappedRSocketServer =
240-
Mono.just(unwrappedServerSocket).map(plugins::applyServer);
241-
242-
return wrappedRSocketServer
243-
.doOnNext(
244-
rSocket ->
245-
new RSocketServer(
246-
multiplexer.asServerConnection(),
247-
rSocket,
248-
frameDecoder,
249-
errorConsumer))
250-
.then(finalConnection.sendOne(setupFrame))
251-
.then(wrappedRSocketClient);
252-
});
231+
RSocket wrappedRSocketClient = plugins.applyClient(rSocketClient);
232+
233+
RSocket unwrappedServerSocket = acceptor.get().apply(wrappedRSocketClient);
234+
235+
RSocket wrappedRSocketServer = plugins.applyServer(unwrappedServerSocket);
236+
237+
RSocketServer rSocketServer = new RSocketServer(
238+
multiplexer.asServerConnection(),
239+
wrappedRSocketServer,
240+
frameDecoder,
241+
errorConsumer);
242+
243+
return connection
244+
.sendOne(setupFrame)
245+
.thenReturn(wrappedRSocketClient);
253246
});
254247
}
255248
}

0 commit comments

Comments
 (0)