@@ -98,7 +98,7 @@ class RSocketClient implements RSocket {
98
98
.doOnError (
99
99
t -> {
100
100
errorConsumer .accept (t );
101
- connection .close (). subscribe ();
101
+ connection .dispose ();
102
102
})
103
103
.subscribe ();
104
104
}
@@ -234,8 +234,13 @@ public double availability() {
234
234
}
235
235
236
236
@ 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 ();
239
244
}
240
245
241
246
@ Override
@@ -260,25 +265,25 @@ public Flux<Payload> handleRequestStream(final Payload payload) {
260
265
return receiver
261
266
.doOnRequest (
262
267
l -> {
263
- if (first .compareAndSet (false , true ) && !receiver .isTerminated ()) {
268
+ if (first .compareAndSet (false , true ) && !receiver .isDisposed ()) {
264
269
final Frame requestFrame =
265
270
Frame .Request .from (streamId , FrameType .REQUEST_STREAM , payload , l );
266
271
payload .release ();
267
272
sendProcessor .onNext (requestFrame );
268
- } else if (contains (streamId ) && !receiver .isTerminated ()) {
273
+ } else if (contains (streamId ) && !receiver .isDisposed ()) {
269
274
sendProcessor .onNext (Frame .RequestN .from (streamId , l ));
270
275
}
271
276
sendProcessor .drain ();
272
277
})
273
278
.doOnError (
274
279
t -> {
275
- if (contains (streamId ) && !receiver .isTerminated ()) {
280
+ if (contains (streamId ) && !receiver .isDisposed ()) {
276
281
sendProcessor .onNext (Frame .Error .from (streamId , t ));
277
282
}
278
283
})
279
284
.doOnCancel (
280
285
() -> {
281
- if (contains (streamId ) && !receiver .isTerminated ()) {
286
+ if (contains (streamId ) && !receiver .isDisposed ()) {
282
287
sendProcessor .onNext (Frame .Cancel .from (streamId ));
283
288
}
284
289
})
@@ -326,7 +331,7 @@ private Flux<Payload> handleChannel(Flux<Payload> request, FrameType requestType
326
331
boolean firstRequest = true ;
327
332
328
333
boolean isValidToSendFrame () {
329
- return contains (streamId ) && !receiver .isTerminated ();
334
+ return contains (streamId ) && !receiver .isDisposed ();
330
335
}
331
336
332
337
void sendOneFrame (Frame frame ) {
0 commit comments