Интерфейс WebSocket.Builder
- Охватывающий интерфейс:
WebSocket
public static interface WebSocket.Builder
Построители создаются вызовом HttpClient.newWebSocketBuilder. Промежуточные методы (подобные сеттерам) изменяют состояние построителя и возвращают тот же построитель, для которого они были вызваны. Если промежуточный метод не вызывается, используется соответствующее значение (или поведение) по умолчанию. Builder нельзя безопасно использовать в нескольких потоках без внешней синхронизации.
- Начиная с версии:
- 11
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
CompletableFuture |
buildAsync |
|
WebSocket.Builder |
connectTimeout |
Задает время ожидания установления соединения WebSocket. |
WebSocket.Builder |
header |
Добавляет указанную пару имя-значение в список дополнительных HTTP-заголовков, отправляемых во время начального рукопожатия. |
WebSocket.Builder |
subprotocols |
Задает запрос для указанных подпротоколов. |
Подробное описание методов
header
WebSocket.Builder header(String name, String value)
Заголовки, определенные в протоколе WebSocket, недопустимы. Если этот метод не вызывается, дополнительные HTTP-заголовки отправляться не будут.
- Параметры:
-
name— имя заголовка -
value— значение заголовка - Возвращает:
- этот построитель
connectTimeout
WebSocket.Builder connectTimeout(Duration timeout)
Если соединение не будет установлено в течение указанного времени, создание WebSocket завершится ошибкой HttpTimeoutException. Если этот метод не вызывается, предполагается бесконечное время ожидания.
- Требования к реализации:
- Время ожидания соединения применяется ко всей фазе установления соединения — с момента запроса соединения до его установления. Реализациям рекомендуется включать в это время ожидания любые рукопожатия WebSocket и SSL/TLS.
- Примечание по реализации:
- Встроенная реализация JDK включает в время ожидания соединения любые рукопожатия WebSocket и SSL/TLS.
- Параметры:
-
timeout— время ожидания, не отрицательное и не равное ZERO - Возвращает:
- этот построитель
subprotocols
WebSocket.Builder subprotocols(String mostPreferred, String... lesserPreferred)
После создания WebSocket фактический подпротокол можно получить с помощью WebSocket.getSubprotocol().
Подпротоколы указываются в порядке предпочтения. Наиболее предпочтительный подпротокол указывается первым. Если имеются дополнительные подпротоколы, они перечисляются от наиболее предпочтительного к наименее предпочтительному.
Подпротоколы, не соответствующие синтаксису идентификаторов подпротоколов, недопустимы. Если этот метод не вызывается, запрос подпротоколов отправляться не будет.
- Параметры:
-
mostPreferred— наиболее предпочтительный подпротокол -
lesserPreferred— менее предпочтительные подпротоколы - Возвращает:
- этот построитель
buildAsync
CompletableFuture<WebSocket> buildAsync(URI uri, WebSocket.Listener listener)
WebSocket, подключенный к указанному URI и связанный с указанным Listener. Возвращает CompletableFuture, который либо успешно завершится с результатом WebSocket, либо завершится исключением с одной из следующих ошибок:
-
IOException— если произошла ошибка ввода-вывода -
WebSocketHandshakeException— если начальное рукопожатие завершилось неудачно -
HttpTimeoutException— если начальное рукопожатие не завершилось за отведенное время -
InterruptedException— если выполнение операции было прервано -
IllegalArgumentException— если какой-либо аргумент методов этого построителя недопустим
- Параметры:
-
uri— URI WebSocket -
listener— прослушиватель - Возвращает:
CompletableFutureсWebSocket
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.