Spec-Zone.ru › OpenJDK 27

Перечисление HttpOption.Http3DiscoveryMode

java.lang.Object
java.lang.Enum<HttpOption.Http3DiscoveryMode>
java.net.http.HttpOption.Http3DiscoveryMode
Все реализуемые интерфейсы:
Serializable, Comparable<HttpOption.Http3DiscoveryMode>, Constable
Включающий интерфейс:
HttpOption<T>
public static enum HttpOption.Http3DiscoveryMode extends Enum<HttpOption.Http3DiscoveryMode>
Это перечисление можно использовать, чтобы помочь HttpClient определить, как следует установить соединение HTTP/3, и его можно передать в качестве значения параметра HttpOption.H3_DISCOVERY методу Builder.setOption.

Обратите внимание: если ни предпочитаемая версия запроса, ни предпочитаемая версия клиента не является HTTP/3, соединение HTTP/3 установлено не будет, а Http3DiscoveryMode будет проигнорировано.

Начиная с версии:
26

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в классе Enum

Enum.EnumDesc<E>
Модификатор и тип Класс Описание
static final class  Enum.EnumDesc<E extends Enum<E>>
Номинальный дескриптор константы enum.

Сводка констант перечисления

Константа перечисления Описание
ALT_SVC
Указывает HttpClient использовать для поиска или установления соединения HTTP/3 с исходным сервером только альтернативные службы HTTP.
ANY
Указывает HttpClient использовать собственный, зависящий от реализации алгоритм для поиска или установления соединения для обмена данными.
HTTP_3_URI_ONLY
Указывает HttpClient пытаться установить соединение HTTP/3 с исходным сервером.

Краткое описание методов

Модификатор и тип Метод Описание
static HttpOption.Http3DiscoveryMode valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем.
static HttpOption.Http3DiscoveryMode[] values()
Возвращает массив, содержащий константы этого перечисления в порядке их объявления.

Методы, объявленные в классе Enum

clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
Модификатор и тип Метод Описание
protected final Object clone()
Выбрасывает CloneNotSupportedException.
final int compareTo(HttpOption.Http3DiscoveryMode o)
Сравнивает это перечисление с указанным объектом, определяя порядок.
final Optional<Enum.EnumDesc<HttpOption.Http3DiscoveryMode>> describeConstable()
Возвращает дескриптор перечисления EnumDesc для этого экземпляра, если его можно создать, или пустой объект Optional, если создать его нельзя.
final boolean equals(Object other)
Возвращает true, если указанный объект равен этой константе перечисления.
protected final void finalize()
Устарело и будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и будет удалена.
final Class<HttpOption.Http3DiscoveryMode> getDeclaringClass()
Возвращает объект Class, соответствующий типу перечисления этой константы.
final int hashCode()
Возвращает хеш-код этой константы перечисления.
final String name()
Возвращает имя этой константы перечисления точно в том виде, в котором оно указано в объявлении перечисления.
final int ordinal()
Возвращает порядковый номер этой константы перечисления (её позицию в объявлении перечисления, где первой константе присваивается номер 0).
String toString()
Возвращает имя этой константы перечисления, указанное в объявлении.
static <T extends Enum<T>>
T
valueOf(Class<T> enumClass, String name)
Возвращает константу указанного класса перечисления с указанным именем.

Методы, объявленные в классе Object

getClass, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

Подробное описание констант перечисления

ANY

public static final HttpOption.Http3DiscoveryMode ANY
Указывает HttpClient использовать собственный, зависящий от реализации алгоритм для поиска или установления соединения для обмена данными. Обычно, если соединение с исходным сервером, указанным в URI запроса, ещё не установлено, реализация HttpClient может попытаться установить соединение HTTP/3 через QUIC и соединение HTTP через TLS/TCP с узлом, указанным в URI запроса, и использовать первое успешно установленное соединение. После этого обмен данными может выполняться с использованием любой из трёх версий протокола HTTP — в зависимости от того, какое соединение было установлено первым.
Примечание по реализации:
Если предпочитаемая версия запроса — HTTP/3, HttpClient может отдать HTTP/3 приоритет, попытавшись установить соединение HTTP/3 до попытки установить соединение TLS через TCP.

При попытке установить соединение HTTP/3 в этом режиме HttpClient может использовать любые сведения об альтернативных службах HTTP, ранее полученные от исходного сервера. Если такие сведения отсутствуют, будет предпринята попытка установить прямое соединение HTTP/3 с узлом (хостом, портом), указанным в URI запроса.

ALT_SVC

public static final HttpOption.Http3DiscoveryMode ALT_SVC
Указывает HttpClient использовать для поиска или установления соединения HTTP/3 с исходным сервером только альтернативные службы HTTP. После этого обмен данными может выполняться с использованием любой из трёх версий протокола HTTP — в зависимости от того, удалось ли найти запись альтернативной службы для HTTP/3 и какая версия HTTP была согласована с исходным сервером, если такую запись найти не удалось.

В этом режиме запросы к исходному серверу будут отправляться по HTTP/1.1 или HTTP/2, пока клиенту не будет объявлена конечная точка h3 альтернативной службы HTTP для этого сервера. Обычно сервер объявляет альтернативную службу в ответе на запрос, чтобы последующие запросы могли её использовать.

HTTP_3_URI_ONLY

public static final HttpOption.Http3DiscoveryMode HTTP_3_URI_ONLY
Указывает HttpClient пытаться установить соединение HTTP/3 с исходным сервером. Соединение будет установлено, только если исходный сервер принимает входящие соединения HTTP/3 через QUIC по тому же узлу (хосту, порту), который указан в URI запроса. В этом режиме альтернативные службы HTTP не используются.

Подробное описание методов

values

public static HttpOption.Http3DiscoveryMode[] values()
Возвращает массив, содержащий константы этого перечисления в порядке их объявления.
Возвращает:
массив, содержащий константы этого перечисления в порядке их объявления

valueOf

public static HttpOption.Http3DiscoveryMode valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем. Строка должна точно совпадать с идентификатором, использованным для объявления константы перечисления в этом классе. (Пробелы в начале и конце строки не допускаются.)
Параметры:
name — имя константы перечисления, которую нужно вернуть.
Возвращает:
константу перечисления с указанным именем
Выбрасывает:
IllegalArgumentException — если в этом классе перечисления нет константы с указанным именем
NullPointerException — если аргумент равен null

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, где приведены более подробные описания для разработчиков, включая концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её филиалов в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её филиалы, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API