.doOnRequest( n -> { if (first.compareAndSet(false, true) && !receiver.isDisposed()) { final Frame requestFrame = Frame.Request.from( payload.release(); sendProcessor.onNext(requestFrame); } else if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.RequestN.from(streamId, n)); .doOnError( t -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Error.from(streamId, t)); .doOnCancel( () -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Cancel.from(streamId));
.doOnComplete( () -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext( Frame.PayloadFrame.from( }); } else { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.RequestN.from(streamId, n)); .doOnError( t -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Error.from(streamId, t)); .doOnCancel( () -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Cancel.from(streamId));
.doOnRequest( n -> { if (first.compareAndSet(false, true) && !receiver.isDisposed()) { final Frame requestFrame = Frame.Request.from( payload.release(); sendProcessor.onNext(requestFrame); } else if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.RequestN.from(streamId, n)); .doOnError( t -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Error.from(streamId, t)); .doOnCancel( () -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Cancel.from(streamId));
.doOnComplete( () -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext( Frame.PayloadFrame.from( }); } else { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.RequestN.from(streamId, n)); .doOnError( t -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Error.from(streamId, t)); .doOnCancel( () -> { if (contains(streamId) && !receiver.isDisposed()) { sendProcessor.onNext(Frame.Cancel.from(streamId));