インターフェース WebSocketHandler
- すべての既知の実装クラス:
AbstractWebSocketHandler
、BinaryWebSocketHandler
、ExceptionWebSocketHandlerDecorator
、LoggingWebSocketHandlerDecorator
、PerConnectionWebSocketHandler
、SockJsWebSocketHandler
、SubProtocolWebSocketHandler
、TextWebSocketHandler
、WebSocketHandlerDecorator
public interface WebSocketHandler
WebSocket メッセージおよびライフサイクルイベントのハンドラー。
このインターフェースの実装は、意味のある場所で例外をローカルで処理するか、例外をバブルアップさせることをお勧めします。この場合、デフォルトで例外がログに記録され、セッションは SERVER_ERROR(1011)
で閉じられます。例外処理戦略は ExceptionWebSocketHandlerDecorator
によって提供され、WebSocketHandler
を別のデコレーターで装飾することでカスタマイズまたは置換できます。
- 導入:
- 4.0
- 作成者:
- Rossen Stoyanchev, Phillip Webb
方法の概要
修飾子と型メソッド説明void
afterConnectionClosed
(WebSocketSession session, CloseStatus closeStatus) WebSocket 接続がいずれかの側で閉じられた後、またはトランスポートエラーが発生した後に呼び出されます。void
WebSocket ネゴシエーションが成功し、WebSocket 接続が開かれ、使用可能な状態になった後に呼び出されます。void
handleMessage
(WebSocketSession session, WebSocketMessage<?> message) 新しい WebSocket メッセージが到着すると呼び出されます。void
handleTransportError
(WebSocketSession session, ThrowableSE exception) 基礎となる WebSocket メッセージトランスポートからのエラーを処理します。boolean
WebSocketHandler が部分的なメッセージを処理するかどうか。
メソッドの詳細
afterConnectionEstablished
WebSocket ネゴシエーションが成功し、WebSocket 接続が開かれ、使用可能な状態になった後に呼び出されます。- 例外:
ExceptionSE
- このメソッドは例外を処理または伝播できます。詳細については、クラスレベルの Javadoc を参照してください。
handleMessage
新しい WebSocket メッセージが到着すると呼び出されます。- 例外:
ExceptionSE
- このメソッドは例外を処理または伝播できます。詳細については、クラスレベルの Javadoc を参照してください。
handleTransportError
基礎となる WebSocket メッセージトランスポートからのエラーを処理します。- 例外:
ExceptionSE
- このメソッドは例外を処理または伝播できます。詳細については、クラスレベルの Javadoc を参照してください。
afterConnectionClosed
WebSocket 接続がどちらかの側で閉じられた後、または転送エラーが発生した後に呼び出されます。セッションは技術的にはまだ開いている可能性がありますが、基盤となる実装によっては、この時点でメッセージを送信することはお勧めできません。おそらく成功しません。- 例外:
ExceptionSE
- このメソッドは例外を処理または伝播できます。詳細については、クラスレベルの Javadoc を参照してください。
supportsPartialMessages
boolean supportsPartialMessages()WebSocketHandler が部分的なメッセージを処理するかどうか。このフラグがtrue
に設定され、基礎となる WebSocket サーバーが部分メッセージをサポートする場合、大きな WebSocket メッセージまたは不明なサイズのメッセージが分割され、handleMessage(WebSocketSession, WebSocketMessage)
への複数の呼び出しで受信される可能性があります。フラグWebSocketMessage.isLast()
は、メッセージが部分的であるかどうか、およびメッセージが最後の部分であるかどうかを示します。