@@ -98,7 +98,7 @@ class RSocketClient implements RSocket {
9898 .doOnError (
9999 t -> {
100100 errorConsumer .accept (t );
101- connection .close (). subscribe ();
101+ connection .dispose ();
102102 })
103103 .subscribe ();
104104 }
@@ -234,8 +234,13 @@ public double availability() {
234234 }
235235
236236 @ Override
237- public Mono <Void > close () {
238- return connection .close ();
237+ public void dispose () {
238+ connection .dispose ();
239+ }
240+
241+ @ Override
242+ public boolean isDisposed () {
243+ return connection .isDisposed ();
239244 }
240245
241246 @ Override
@@ -260,25 +265,25 @@ public Flux<Payload> handleRequestStream(final Payload payload) {
260265 return receiver
261266 .doOnRequest (
262267 l -> {
263- if (first .compareAndSet (false , true ) && !receiver .isTerminated ()) {
268+ if (first .compareAndSet (false , true ) && !receiver .isDisposed ()) {
264269 final Frame requestFrame =
265270 Frame .Request .from (streamId , FrameType .REQUEST_STREAM , payload , l );
266271 payload .release ();
267272 sendProcessor .onNext (requestFrame );
268- } else if (contains (streamId ) && !receiver .isTerminated ()) {
273+ } else if (contains (streamId ) && !receiver .isDisposed ()) {
269274 sendProcessor .onNext (Frame .RequestN .from (streamId , l ));
270275 }
271276 sendProcessor .drain ();
272277 })
273278 .doOnError (
274279 t -> {
275- if (contains (streamId ) && !receiver .isTerminated ()) {
280+ if (contains (streamId ) && !receiver .isDisposed ()) {
276281 sendProcessor .onNext (Frame .Error .from (streamId , t ));
277282 }
278283 })
279284 .doOnCancel (
280285 () -> {
281- if (contains (streamId ) && !receiver .isTerminated ()) {
286+ if (contains (streamId ) && !receiver .isDisposed ()) {
282287 sendProcessor .onNext (Frame .Cancel .from (streamId ));
283288 }
284289 })
@@ -326,7 +331,7 @@ private Flux<Payload> handleChannel(Flux<Payload> request, FrameType requestType
326331 boolean firstRequest = true ;
327332
328333 boolean isValidToSendFrame () {
329- return contains (streamId ) && !receiver .isTerminated ();
334+ return contains (streamId ) && !receiver .isDisposed ();
330335 }
331336
332337 void sendOneFrame (Frame frame ) {
0 commit comments