パッケージ jakarta.websocket

インターフェース WebSocketContainer

  • すべての既知のサブインターフェース:
    ServerContainer

    public interface WebSocketContainer
    WebSocketContainer は、アプリケーションがオブジェクトを実行するコンテナーのビューを提供する実装提供オブジェクトです。WebSocketContainer コンテナーには、含まれているエンドポイントのデフォルトのセッションとバッファーのプロパティを制御するさまざまな構成パラメーターがあります。また、開発者は、提供されたエンドポイントからピアエンドポイントが存在すると推定される提供された URI への Web ソケットハンドシェイクを開始することにより、Web ソケットクライアントエンドポイントをデプロイできます。

    WebSocketContainer は同時スレッドによってアクセスされる可能性があるため、実装では、このような状況でその可変属性の整合性を確保する必要があります。

    作成者:
    dannycoward
    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   抽象メソッド  
      修飾子と型 メソッド 説明
      SessionconnectToServer​(Endpoint endpointInstance, ClientEndpointConfig cec, URISE path)
      提供されたプログラムによるクライアントエンドポイントインスタンスを、指定された構成でサーバーに接続します。
      SessionconnectToServer​(ClassSE<?> annotatedEndpointClass, URISE path)
      提供されているアノテーション付きエンドポイントをサーバーに接続します。
      SessionconnectToServer​(ClassSE<? extends Endpoint> endpointClass, ClientEndpointConfig cec, URISE path)
      指定された設定を使用して、提供されたプログラムエンドポイントをサーバーに接続します。
      SessionconnectToServer​(ObjectSE annotatedEndpointInstance, URISE path)
      提供されているアノテーション付きエンドポイントインスタンスをサーバーに接続します。
      longgetDefaultAsyncSendTimeout()
      このコンテナーに関連付けられているすべての RemoteEndpoints の WebSocket メッセージを送信しようとして実装がタイムアウトするミリ秒数を返します。
      intgetDefaultMaxBinaryMessageBufferSize()
      このコンテナーがバッファリングする受信バイナリメッセージのデフォルトの最大サイズを返します。
      longgetDefaultMaxSessionIdleTimeout()
      デフォルトの時間(ミリ秒単位)を返します。この時間が経過すると、このコンテナー内の Web ソケットセッションが非アクティブである場合は、閉じられます。
      intgetDefaultMaxTextMessageBufferSize()
      このコンテナーがバッファリングする受信テキストメッセージのデフォルトの最大サイズを返します。
      SetSE<Extension>getInstalledExtensions()
      コンテナーにインストールされている拡張機能のセットを返します。
      voidsetAsyncSendTimeout​(long timeoutmillis)
      このコンテナーに関連付けられたすべての RemoteEndpoints の WebSocket メッセージを送信しようとして実装がタイムアウトするミリ秒数を設定します。
      voidsetDefaultMaxBinaryMessageBufferSize​(int max)
      このコンテナーがバッファリングする受信バイナリメッセージのデフォルトの最大サイズを設定します。
      voidsetDefaultMaxSessionIdleTimeout​(long timeout)
      デフォルトの時間をミリ秒単位で設定します。この時間が経過すると、このコンテナー内の Web ソケットセッションが非アクティブである場合は、それが閉じられます。
      voidsetDefaultMaxTextMessageBufferSize​(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 - テキストメッセージの最大サイズ(バイト数)。
      • getInstalledExtensions

        SetSE<Extension> getInstalledExtensions()
        コンテナーにインストールされている拡張機能のセットを返します。
        戻り値:
        拡張機能のセット。