モジュール java.net.http
パッケージ java.net.http

インタフェースWebSocket.Builder

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

    public static interface WebSocket.Builder
    「WebSocketクライアント」のビルダー。

    ビルダーは、HttpClient.newWebSocketBuilderを呼び出すことによって作成されます。 中間の(setter-like)メソッドは、ビルダーの状態を変更し、起動されたのと同じビルダーを返します。 中間メソッドが起動されない場合、適切なデフォルト値(または行動)が使用されます。 Builderは、外部同期化のない複数のスレッドでは安全ではありません。

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

      • header

        WebSocket.Builder header​(String name,
                                 String value)
        指定された名前と値のペアを、開始ハンドシェイク中に送信された追加のHTTPヘッダーのリストに追加します。

        「WebSocketプロトコル」に定義されているヘッダーが不正です。 このメソッドが呼び出されない場合、追加のHTTPヘッダーは送信されません。

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

        WebSocket.Builder connectTimeout​(Duration timeout)
        WebSocket接続を確立するためのタイムアウトを設定します。

        指定された期間内に接続が確立されていない場合、WebSocketの構築はHttpTimeoutExceptionで失敗します。 このメソッドが呼び出されない場合は、無限タイムアウトとみなされます。

        パラメータ:
        timeout - タイムアウト、負でないZERO以外
        戻り値:
        このビルダー
      • subprotocols

        WebSocket.Builder subprotocols​(String mostPreferred,
                                       String... lesserPreferred)
        指定されたサブプロトコルの要求を設定します。

        WebSocketが構築されると、WebSocket.getSubprotocol()を介して実際のサブ・ロールを問い合せることができます。

        サブプロトコルは、優先順位で指定されます。 最も優先されるサブプロトコルが最初に指定されます。 追加のサブプロトコルがある場合、それらはもっとも優先されるものからもっとも優先されないものまで列挙されます。

        サブプロトコル識別子の構文に準拠していないサブプロトコルは不正です。 このメソッドが呼び出されない場合、サブプロトコルは要求されません。

        パラメータ:
        mostPreferred - 最も優先されるサブプロトコル
        lesserPreferred - 優先度の低いサブプロトコル
        戻り値:
        このビルダー
      • buildAsync

        CompletableFuture<WebSocket> buildAsync​(URI uri,
                                                WebSocket.Listener listener)
        指定されたURIに接続され、指定されたListenerに関連付けられているWebSocketを構築します。

        結果のWebSocketで正常に完了するか、次のいずれかのエラーで例外的に完了するCompletableFutureを返します。

        パラメータ:
        uri - WebSocket URI
        listener - リスナー
        戻り値:
        WebSocketを含むCompletableFuture