public interface RemoteEndpoint
Session.getBasicRemote()
または Session.getAsyncRemote()
を使用してセッションから取得されます。この種のオブジェクトには、Web ソケットメッセージを送信するためのさまざまな方法が含まれています。RemoteEndpoint オブジェクトには、WebSocket メッセージを同期送信するための RemoteEndpoint.Basic と、メッセージを非同期に送信するための RemoteEndpoint.Async の 2 種類があります。ピアへの Web ソケットメッセージの正常な配信の保証はありませんが、メッセージを送信するアクションによってコンテナーに認識されているエラーが発生した場合、API はそれをスローします。RemoteEndpoints には、メッセージを送信するためのさまざまな方法が含まれています。メッセージ全体、部分、WebSocket の ping や pong を含むさまざまなデータ形式です。
実装は、メッセージのバッチ処理をサポートする場合とサポートしない場合があります。バッチ処理をサポートする実装の予想されるセマンティクスの詳細は、setBatchingAllowed(boolean)
に記載されています。
メモ: 実装では、大きなメッセージを小さな部分で送信するための独自のスキームを選択できます。これらのスキームは、メッセージが最終的にネットワーク上で送信される基盤となる WebSocket データフレームと関連がある場合とない場合があります。
基礎となる接続が閉じられ、RemoteEndpoint のメソッドが呼び出されようとすると、エラーが生成されます。メッセージを送信するメソッドの場合、これは IOException になり、エンドポイントの構成を変更するメソッドの場合、これはランタイム IllegalArgumentExceptions になります。
修飾子と型 | インターフェースと説明 |
---|---|
static interface | RemoteEndpoint.Async Web ソケット会話のピアのこの表現には、メッセージを非同期的に送信する機能があります。 |
static interface | RemoteEndpoint.Basic Web ソケット会話のピアのこの表現には、メッセージを同期的に送信する機能があります。 |
修飾子と型 | メソッドと説明 |
---|---|
void | flushBatch() この方法は、この RemoteEndpint でバッチ処理が許可されている場合にのみ使用されます。 |
boolean | getBatchingAllowed() 実装が送信前に送信メッセージをバッチ処理できるかどうかを返します。 |
void | sendPing(ByteBufferSE applicationData) 指定されたアプリケーションデータを含む Ping メッセージをリモートエンドポイントに送信します。 |
void | sendPong(ByteBufferSE applicationData) 開発者が、セッションの単方向ハートビートとして機能するために、指定されたアプリケーションデータを含む一方的な Pong メッセージを送信できるようにします。 |
void | setBatchingAllowed(boolean allowed) 送信する前に送信メッセージをバッチ処理できることを実装に示します。 |
void setBatchingAllowed(boolean allowed) throws IOExceptionSE
allowed
- 実装がメッセージのバッチ処理を許可されているかどうか。IOExceptionSE
- バッチ処理が無効になっていて未送信のメッセージがある場合、問題があると実装が未送信のメッセージのバッチを送信するため、このエラーがスローされる可能性があります。boolean getBatchingAllowed()
setBatchingAllowed
を呼び出すことにより、値を変更できます。true
、それ以外の場合は false
void flushBatch() throws IOExceptionSE
IOExceptionSE
- 未送信のメッセージの送信に失敗した場合 void sendPing(ByteBufferSE applicationData) throws IOExceptionSE, IllegalArgumentExceptionSE
applicationData
- ping リクエストで運ばれるデータ。IOExceptionSE
- ping の送信に失敗した場合 IllegalArgumentExceptionSE
- applicationData が最大許容ペイロード 125 バイトを超える場合 void sendPong(ByteBufferSE applicationData) throws IOExceptionSE, IllegalArgumentExceptionSE
applicationData
- ポンレスポンスで運ばれるアプリケーションデータ。IOExceptionSE
- ポンが送信されなかった場合 IllegalArgumentExceptionSE
- applicationData が最大許容ペイロード 125 バイトを超える場合 Copyright © 2019 Eclipse Foundation.
Use is subject to license terms.