パッケージ jakarta.websocket
インターフェース WebSocketContainer
- すべての既知のサブインターフェース:
ServerContainer
public interface WebSocketContainer
WebSocketContainer は、アプリケーションがオブジェクトを実行するコンテナーのビューを提供する実装提供オブジェクトです。WebSocketContainer コンテナーには、含まれているエンドポイントのデフォルトのセッションとバッファーのプロパティを制御するさまざまな構成パラメーターがあります。また、開発者は、提供されたエンドポイントからピアエンドポイントが存在すると推定される提供された URI への Web ソケットハンドシェイクを開始することにより、Web ソケットクライアントエンドポイントをデプロイできます。WebSocketContainer は同時スレッドによってアクセスされる可能性があるため、実装では、このような状況でその可変属性の整合性を確保する必要があります。
- 作成者:
- dannycoward
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 Session
connectToServer(Endpoint endpointInstance, ClientEndpointConfig cec, URISE path)
提供されたプログラムによるクライアントエンドポイントインスタンスを、指定された構成でサーバーに接続します。Session
connectToServer(ClassSE<?> annotatedEndpointClass, URISE path)
提供されているアノテーション付きエンドポイントをサーバーに接続します。Session
connectToServer(ClassSE<? extends Endpoint> endpointClass, ClientEndpointConfig cec, URISE path)
指定された設定を使用して、提供されたプログラムエンドポイントをサーバーに接続します。Session
connectToServer(ObjectSE annotatedEndpointInstance, URISE path)
提供されているアノテーション付きエンドポイントインスタンスをサーバーに接続します。long
getDefaultAsyncSendTimeout()
このコンテナーに関連付けられているすべての RemoteEndpoints の WebSocket メッセージを送信しようとして実装がタイムアウトするミリ秒数を返します。int
getDefaultMaxBinaryMessageBufferSize()
このコンテナーがバッファリングする受信バイナリメッセージのデフォルトの最大サイズを返します。long
getDefaultMaxSessionIdleTimeout()
デフォルトの時間(ミリ秒単位)を返します。この時間が経過すると、このコンテナー内の Web ソケットセッションが非アクティブである場合は、閉じられます。int
getDefaultMaxTextMessageBufferSize()
このコンテナーがバッファリングする受信テキストメッセージのデフォルトの最大サイズを返します。SetSE<Extension>
getInstalledExtensions()
コンテナーにインストールされている拡張機能のセットを返します。void
setAsyncSendTimeout(long timeoutmillis)
このコンテナーに関連付けられたすべての RemoteEndpoints の WebSocket メッセージを送信しようとして実装がタイムアウトするミリ秒数を設定します。void
setDefaultMaxBinaryMessageBufferSize(int max)
このコンテナーがバッファリングする受信バイナリメッセージのデフォルトの最大サイズを設定します。void
setDefaultMaxSessionIdleTimeout(long timeout)
デフォルトの時間をミリ秒単位で設定します。この時間が経過すると、このコンテナー内の Web ソケットセッションが非アクティブである場合は、それが閉じられます。void
setDefaultMaxTextMessageBufferSize(int max)
このコンテナーがバッファリングする受信テキストメッセージの最大サイズを設定します。
メソッドの詳細
getDefaultAsyncSendTimeout
long getDefaultAsyncSendTimeout()
このコンテナーに関連付けられたすべての RemoteEndpoints に対して Websocket メッセージを送信しようとして、実装がタイムアウトになるミリ秒数を返します。ゼロまたは負の値は、実装が Websocket メッセージを非同期に送信しようとしてタイムアウトしないことを示します。このデフォルトは、各 RemoteEndpoint でオーバーライドされる可能性があることに注意してください。- 戻り値:
- ミリ秒単位のタイムアウト時間。
setAsyncSendTimeout
void setAsyncSendTimeout(long timeoutmillis)
このコンテナーに関連付けられたすべての RemoteEndpoints に対して Websocket メッセージを送信しようとして実装がタイムアウトするミリ秒数を設定します。ゼロまたは負の値は、実装が Websocket メッセージを非同期に送信しようとしてタイムアウトしないことを示します。このデフォルトは、各 RemoteEndpoint でオーバーライドされる可能性があることに注意してください。- パラメーター:
timeoutmillis
- ミリ秒単位のタイムアウト。タイムアウトなしにはゼロまたは負の値を使用します
connectToServer
Session connectToServer(ObjectSE annotatedEndpointInstance, URISE path) throws DeploymentException, IOExceptionSE
提供されたアノテーション付きエンドポイントインスタンスをそのサーバーに接続します。提供されるオブジェクトは、クラスレベルのClientEndpoint
アノテーションで装飾されたクラスである必要があります。このメソッドは、接続が確立されるまでブロックするか、接続を確立できなかったか、指定されたエンドポイントクラスに問題があった場合にエラーをスローします。開発者がこの方法を使用してクライアントエンドポイントをデプロイする場合、たとえば、実装が Java EE プラットフォームの一部である場合にサポートされる、依存性注入などのサービスが利用できない場合があります。クライアントエンドポイントが依存性注入を使用する場合は、代わりにconnectToServer(java.lang.Class, java.net.URI)
を使用してください。- パラメーター:
annotatedEndpointInstance
- アノテーション付きの WebSocket クライアントエンドポイントインスタンス。path
- サーバーエンドポイントへの完全なパス。- 戻り値:
- 接続が成功した場合に作成されたセッション。
- 例外:
DeploymentException
- アノテーション付きエンドポイントインスタンスが無効な場合。IOExceptionSE
- クライアントエンドポイントをサーバーに接続できないネットワークまたはプロトコルの問題があった場合。IllegalStateExceptionSE
- 包含アプリケーションのデプロイフェーズ中に呼び出された場合。
connectToServer
Session connectToServer(ClassSE<?> annotatedEndpointClass, URISE path) throws DeploymentException, IOExceptionSE
提供されたアノテーション付きエンドポイントをサーバーに接続します。提供されるオブジェクトは、クラスレベルのClientEndpoint
アノテーションで装飾されたクラスである必要があります。このメソッドは、接続が確立されるまでブロックするか、接続を確立できなかったか、指定されたエンドポイントクラスに問題があった場合にエラーをスローします。- パラメーター:
annotatedEndpointClass
- アノテーション付きの WebSocket クライアントエンドポイント。path
- サーバーエンドポイントへの完全なパス。- 戻り値:
- 接続が成功した場合に作成されたセッション。
- 例外:
DeploymentException
- クラスが有効なアノテーション付きエンドポイントクラスでない場合。IOExceptionSE
- クライアントエンドポイントをサーバーに接続できないネットワークまたはプロトコルの問題があった場合。IllegalStateExceptionSE
- 包含アプリケーションのデプロイフェーズ中に呼び出された場合。
connectToServer
Session connectToServer(Endpoint endpointInstance, ClientEndpointConfig cec, URISE path) throws DeploymentException, IOExceptionSE
提供されたプログラムによるクライアントエンドポイントインスタンスを、指定された構成でサーバーに接続します。このメソッドは、接続が確立されるまでブロックします。接続が確立できなかった場合はエラーをスローします。開発者がこのメソッドを使用してクライアントエンドポイントをデプロイする場合、たとえば、実装が Java EE プラットフォームの一部である場合にサポートされる依存性注入などのサービスが利用できない場合があります。クライアントエンドポイントが依存性注入を使用する場合は、代わりにconnectToServer(java.lang.Class, jakarta.websocket.ClientEndpointConfig, java.net.URI)
を使用します。- パラメーター:
endpointInstance
- プログラムによるクライアントエンドポイントインスタンスEndpoint
。path
- サーバーエンドポイントへの完全なパス。cec
- プログラムによるエンドポイントの構成に使用される構成。- 戻り値:
- 接続が成功した場合に作成されたセッション。
- 例外:
DeploymentException
- 構成が無効な場合IOExceptionSE
- クライアントエンドポイントをサーバーに接続できないネットワークまたはプロトコルの問題があった場合IllegalStateExceptionSE
- 包含アプリケーションのデプロイフェーズ中に呼び出された場合。
connectToServer
Session connectToServer(ClassSE<? extends Endpoint> endpointClass, ClientEndpointConfig cec, URISE path) throws DeploymentException, IOExceptionSE
提供されたプログラムによるエンドポイントを、指定された構成でサーバーに接続します。このメソッドは、接続が確立されるまでブロックします。接続が確立できなかった場合はエラーをスローします。- パラメーター:
endpointClass
- プログラムによるクライアントエンドポイントクラスEndpoint
path
- サーバーエンドポイントへの完全なパス。cec
- プログラムによるエンドポイントの構成に使用される構成。- 戻り値:
- 接続が成功した場合に作成されたセッション。
- 例外:
DeploymentException
- 構成が無効な場合IOExceptionSE
- クライアントエンドポイントをサーバーに接続できないネットワークまたはプロトコルの問題があった場合IllegalStateExceptionSE
- 包含アプリケーションのデプロイフェーズ中に呼び出された場合。
getDefaultMaxSessionIdleTimeout
long getDefaultMaxSessionIdleTimeout()
このコンテナー内の Web ソケットセッションがアクティブでない場合に閉じられるまでの既定の時間をミリ秒単位で返します。ゼロまたは負の値は、セッションがアクティブでないためにタイムアウトしないことを示します。この値は、Session.setMaxIdleTimeout(long)
を使用してセッションごとにオーバーライドできます。- 戻り値:
- このコンテナーのアイドルセッションが終了するまでのデフォルトのミリ秒数
setDefaultMaxSessionIdleTimeout
void setDefaultMaxSessionIdleTimeout(long timeout)
このコンテナー内のすべての Web ソケットセッションがアクティブでない場合に閉じられるまでの既定の時間をミリ秒単位で設定します。ゼロまたは負の値は、セッションがアクティブでないためにタイムアウトしないことを示します。この値は、Session.setMaxIdleTimeout(long)
を使用してセッションごとにオーバーライドできます。- パラメーター:
timeout
- ミリ秒単位の最大時間。タイムアウトなしにはゼロまたは負の値を使用します
getDefaultMaxBinaryMessageBufferSize
int getDefaultMaxBinaryMessageBufferSize()
このコンテナーがバッファリングする受信バイナリメッセージのデフォルトの最大サイズを返します。このデフォルトは、Session.setMaxBinaryMessageBufferSize(int)
を使用してセッションごとにオーバーライドできます。- 戻り値:
- 受信バイナリメッセージの最大サイズ(バイト数)。
setDefaultMaxBinaryMessageBufferSize
void setDefaultMaxBinaryMessageBufferSize(int max)
このコンテナーがバッファリングする受信バイナリメッセージのデフォルトの最大サイズを設定します。- パラメーター:
max
- バイナリメッセージの最大サイズ(バイト数)。
getDefaultMaxTextMessageBufferSize
int getDefaultMaxTextMessageBufferSize()
このコンテナーがバッファする受信テキストメッセージのデフォルトの最大サイズを返します。このデフォルトは、Session.setMaxTextMessageBufferSize(int)
を使用してセッションごとにオーバーライドできます。- 戻り値:
- 受信テキストメッセージの最大サイズ(バイト数)。
setDefaultMaxTextMessageBufferSize
void setDefaultMaxTextMessageBufferSize(int max)
このコンテナーがバッファリングする受信テキストメッセージの最大サイズを設定します。- パラメーター:
max
- テキストメッセージの最大サイズ(バイト数)。