-
- 含まれているインタフェース:
- WebSocket
public static interface WebSocket.Builder
WebSocket
インスタンスを作成するためのビルダー。
インキュベーション機能。将来のリリースで削除されます。WebSocket
をビルドするには、ビルダーをビルドするには、中間メソッド(ビルダー自体を返すもの)を呼び出して必要に応じて構成し、最後にbuildAsync()
を呼び出してCompletableFuture
を取得し、結果のWebSocket
を取得します。中間メソッドが呼び出されていない場合は、適切なデフォルト値(または行動)が使用されます。 特に指定のないかぎり、中間メソッドを繰り返し呼び出すと、以前の値(以前の動作を上書きします)が上書きされます。
Builder
のインスタンスは、外部同期なしで複数のスレッドで使用することは安全ではありません。- 導入されたバージョン:
- 9
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 CompletableFuture<WebSocket>
buildAsync()
WebSocket
を構築します。WebSocket.Builder
connectTimeout(Duration timeout)
開始ハンドシェイクのタイムアウトを設定します。WebSocket.Builder
header(String name, String value)
指定された名前と値のペアをオープニング・ハンドシェイクの追加ヘッダーのリストに追加します。WebSocket.Builder
subprotocols(String mostPreferred, String... lesserPreferred)
開始ハンドシェイク中に、指定されたサブ・プロトコルのリクエストを含みます。
-
-
-
メソッドの詳細
-
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
で完了します。このメソッドが呼び出されない場合、タイムアウトは無限とみなされます。
-
buildAsync
CompletableFuture<WebSocket> buildAsync()
WebSocket
を構築します。接続時に
WebSocket
で正常に終了するか、エラーが発生した場合に例外的に完了するCompletableFuture<WebSocket>
を返します。CompletableFuture
は、次のエラーで例外的に完了することがあります:-
IOException
- I/Oエラーが発生した場合 -
WebSocketHandshakeException
- オープニング・ハンドシェイクが失敗した場合 -
HttpTimeoutException
- オープン・ハンドシェイクが指定されたduration内で完了しない場合 -
InterruptedException
- 操作が中断された場合 -
SecurityException
- セキュリティ・マネージャが設定されていて、呼び出し元にWebSocket URIのURLPermission
がない場合 -
IllegalArgumentException
- 追加のheaders
のいずれかが違法である場合。またはsubprotocols
に関連するWebSocketプロトコル・ルールのいずれかに違反した場合。connect timeout
が無効である場合
- 戻り値:
WebSocket
を含むCompletableFuture
-
-
-