モジュール jdk.incubator.httpclient
パッケージ jdk.incubator.http

インタフェースWebSocket.Builder

  • 含まれているインタフェース:
    WebSocket


    public static interface WebSocket.Builder
    WebSocketインスタンスを作成するためのビルダー。
    インキュベーション機能。将来のリリースで削除されます。

    WebSocketをビルドするには、ビルダーをビルドするには、中間メソッド(ビルダー自体を返すもの)を呼び出して必要に応じて構成し、最後にbuildAsync()を呼び出してCompletableFutureを取得し、結果のWebSocketを取得します。

    中間メソッドが呼び出されていない場合は、適切なデフォルト値(または行動)が使用されます。 特に指定のないかぎり、中間メソッドを繰り返し呼び出すと、以前の値(以前の動作を上書きします)が上書きされます。

    Builderのインスタンスは、外部同期なしで複数のスレッドで使用することは安全ではありません。

    導入されたバージョン:
    9
    • メソッドの詳細

      • header

        WebSocket.Builder header​(String name,
                                 String value)
        指定された名前と値のペアをオープニング・ハンドシェイクの追加ヘッダーのリストに追加します。

        WebSocketプロトコルで定義されたヘッダーは追加できません。

        パラメータ:
        name - ヘッダー名
        value - ヘッダー値
        戻り値:
        このビルダー
      • subprotocols

        WebSocket.Builder subprotocols​(String mostPreferred,
                                       String... lesserPreferred)
        開始ハンドシェイク中に、指定されたサブ・プロトコルのリクエストを含みます。

        リクエストされたサブ・プロトコルの中でも、最大で1つがサーバーによって選択されます。 このサブ・プロトコルはWebSocket.getSubprotocol()から入手できます。 サブ・プロトコルは、優先順位の順に指定されます。

        各サブ・プロトコルは、WebSocketプロトコルで定義されている関連規則に準拠している必要があります。

        このメソッドが呼び出されない場合、サブ・プロトコルはリクエストされません。

        パラメータ:
        mostPreferred - 最も優先されるサブ・プロトコル
        lesserPreferred - あまり優先されないサブ・プロトコルであり、最後には最も優先されない
        戻り値:
        このビルダー
      • connectTimeout

        WebSocket.Builder connectTimeout​(Duration timeout)
        開始ハンドシェイクのタイムアウトを設定します。

        オープン・ハンドシェークが指定された持続時間内に完了しない場合、buildAsync()から返されたCompletableFutureは例外的にHttpTimeoutExceptionで完了します。

        このメソッドが呼び出されない場合、タイムアウトは無限とみなされます。

        パラメータ:
        timeout - タイムアウト、非negative、非ZERO
        戻り値:
        このビルダー
      • buildAsync

        CompletableFuture<WebSocket> buildAsync​()
        WebSocketを構築します。

        接続時にWebSocketで正常に終了するか、エラーが発生した場合に例外的に完了するCompletableFuture<WebSocket>を返します。

        CompletableFutureは、次のエラーで例外的に完了することがあります:

        戻り値:
        WebSocketを含むCompletableFuture