T
- ネイティブデリゲート型 public abstract class AbstractListenerWebSocketSession<T> extends AbstractWebSocketSession<T> implements org.reactivestreams.Subscriber<VoidSE>
WebSocketSession
実装の基本クラス。 また、Subscriber<Void>
の実装であるため、セッション処理の補完サブスクライバーとして使用できます。
修飾子と型 | クラスと説明 |
---|---|
protected class | AbstractListenerWebSocketSession.WebSocketSendProcessor Web ソケットメッセージを送信するプロセッサー。 |
logger
コンストラクターと説明 |
---|
AbstractListenerWebSocketSession(T delegate, StringSE id, HandshakeInfo handshakeInfo, DataBufferFactory bufferFactory) 基本コンストラクター。 |
AbstractListenerWebSocketSession(T delegate, StringSE id, HandshakeInfo info, DataBufferFactory bufferFactory, reactor.core.publisher.MonoProcessor<VoidSE> completionMono) セッションの補完(成功またはエラー)を伝搬するための補完 Mono<Void> を持つ代替コンストラクター(クライアント側で使用するため)。 |
修飾子と型 | メソッドと説明 |
---|---|
protected abstract boolean | canSuspendReceiving() 基礎となる WebSocket API にフロー制御があり、メッセージの受信を一時停止および再開できるかどうか。 |
protected AbstractListenerWebSocketSession.WebSocketSendProcessor | getSendProcessor() |
void | onComplete() |
void | onError(ThrowableSE ex) |
void | onNext(VoidSE aVoid) |
void | onSubscribe(org.reactivestreams.Subscription subscription) |
reactor.core.publisher.Flux<WebSocketMessage> | receive() 受信メッセージのストリームへのアクセスを提供します。 |
protected abstract void | resumeReceiving() ダウンストリームサブスクライバによって要求が生成された後、新しいメッセージの受信を再開します。 |
reactor.core.publisher.Mono<VoidSE> | send(org.reactivestreams.Publisher<WebSocketMessage> messages) 発信メッセージのソースを提供し、メッセージを書き込み、ソースが完了して書き込みが完了すると完了する Mono<Void> を返します。 |
protected abstract boolean | sendMessage(WebSocketMessage message) 指定された WebSocket メッセージを送信します。 |
protected abstract void | suspendReceiving() 受信したメッセージが処理され、ダウンストリームサブスクライバーによってより多くの要求が生成されるまで、受信を中断します。 |
binaryMessage, bufferFactory, getAttributes, getDelegate, getHandshakeInfo, getId, getLogPrefix, pingMessage, pongMessage, textMessage, toString
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
close, close
public AbstractListenerWebSocketSession(T delegate, StringSE id, HandshakeInfo handshakeInfo, DataBufferFactory bufferFactory)
delegate
- ネイティブ WebSocket セッション、チャネル、接続 id
- セッション IDhandshakeInfo
- ハンドシェイク情報 bufferFactory
- 現在の接続の DataBuffer 係数 public AbstractListenerWebSocketSession(T delegate, StringSE id, HandshakeInfo info, DataBufferFactory bufferFactory, @Nullable reactor.core.publisher.MonoProcessor<VoidSE> completionMono)
Mono<Void>
を持つ代替コンストラクター(クライアント側で使用するため)。protected AbstractListenerWebSocketSession.WebSocketSendProcessor getSendProcessor()
public reactor.core.publisher.Flux<WebSocketMessage> receive()
WebSocketSession
このストリームは、接続が閉じられたときに完了またはエラー信号を受け取ります。典型的な WebSocketHandler
実装では、このストリームは全体的な処理フローに組み込まれるため、接続が閉じられると処理が終了します。
セッションの処理方法の詳細と例については、WebSocketHandler
のクラスレベルのドキュメントとリファレンスを参照してください。
WebSocketSession
の receive
AbstractWebSocketSession<T>
の receive
public reactor.core.publisher.Mono<VoidSE> send(org.reactivestreams.Publisher<WebSocketMessage> messages)
WebSocketSession
Mono<Void>
を返します。 セッションの処理方法の詳細と例については、WebSocketHandler
のクラスレベルのドキュメントとリファレンスを参照してください。
WebSocketSession
の send
AbstractWebSocketSession<T>
の send
protected abstract boolean canSuspendReceiving()
注意 : サブクラスは、可能であれば一時停止モードで開始し、要求が受信されるまで待機することをお勧めします。
protected abstract void suspendReceiving()
注意 : 基礎となる WebSocket API がメッセージを受信するためのフロー制御を提供しない場合、このメソッドは何もしないで、canSuspendReceiving()
は false
を返す必要があります。
protected abstract void resumeReceiving()
注意 : 基礎となる WebSocket API がメッセージを受信するためのフロー制御を提供しない場合、このメソッドは何もしないで、canSuspendReceiving()
は false
を返す必要があります。
protected abstract boolean sendMessage(WebSocketMessage message) throws IOExceptionSE
注意 : プールされたバッファーが基になるコンテナーに適用される場合、サブクラスは、完全に書き込まれた後、ペイロードデータバッファーを解放します。
public void onSubscribe(org.reactivestreams.Subscription subscription)
org.reactivestreams.Subscriber<VoidSE>
の onSubscribe
public void onNext(VoidSE aVoid)
org.reactivestreams.Subscriber<VoidSE>
の onNext
public void onError(ThrowableSE ex)
org.reactivestreams.Subscriber<VoidSE>
の onError
public void onComplete()
org.reactivestreams.Subscriber<VoidSE>
の onComplete