Spec-Zone.ru › OpenJDK 8

Класс ProxySelector

  • java.lang.Object
    • java.net.ProxySelector

public abstract class ProxySelector
extends Object

Выбирает прокси-сервер для использования при подключении к сетевому ресурсу, указанному в URL. Прокси-селектор — это конкретный подкласс этого класса, зарегистрированный вызовом метода setDefault. Текущий зарегистрированный прокси-селектор можно получить, вызвав метод getDefault.

При регистрации прокси-селектора, например, подкласс класса URLConnection должен вызывать метод select для каждого запроса URL, чтобы прокси-селектор мог решить, использовать прямое или прокси-соединение. Метод select возвращает итератор по коллекции с предпочтительным подходом к соединению.

Если подключение к прокси- (PROXY или SOCKS) серверам не может быть установлено, вызывающий должен вызвать метод прокси-селектора connectFailed, чтобы уведомить прокси-селектор о недоступности прокси-сервера.

По умолчанию прокси-селектор применяет набор системных свойств, связанных с настройками прокси, описанных в документации.

Since:
1.5

Конструкторы

Конструктор и описание
ProxySelector()

Методы

Модификатор и тип Метод и описание
abstract void connectFailed(URI uri, SocketAddress sa, IOException ioe)

Вызывается для указания того, что соединение с прокси/соксом-сервером не может быть установлено.

static ProxySelector getDefault()

Получает прокси-селектор системы.

abstract List<Proxy> select(URI uri)

Выбирает все подходящие прокси на основе протокола доступа к ресурсу и адреса назначения.

static void setDefault(ProxySelector ps)

Устанавливает (или сбрасывает) прокси-селектор системы.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

ProxySelector

public ProxySelector()

Методы

getDefault

public static ProxySelector getDefault()

Получает прокси-селектор системы.

Возвращает:
системный ProxySelector
Исключение:
SecurityException - Если установлен менеджер безопасности и он запрещает NetPermission("getProxySelector")
Since:
1.5
См. также:
setDefault(ProxySelector)

setDefault

public static void setDefault(ProxySelector ps)

Устанавливает (или сбрасывает) прокси-селектор системы. Примечание: нестандартные обработчики протоколов могут игнорировать это значение.

Параметры:
ps - Прокси-селектор HTTP, или null для сброса прокси-селектора.
Исключение:
SecurityException - Если установлен менеджер безопасности и он запрещает NetPermission("setProxySelector")
Since:
1.5
См. также:
getDefault()

select

public abstract List<Proxy> select(URI uri)

Выбирает все применимые прокси на основе протокола доступа к ресурсу и адреса назначения. Формат URI определяется следующим образом:

  • http URI для http соединений
  • https URI для https соединений
  • socket://host:port
    для tcp-соединений клиента

Параметры:
uri - URI, для которого требуется соединение
Возвращает:
список прокси. Каждый элемент списка имеет тип Proxy; если прокси недоступен, список будет содержать один элемент типа Proxy, представляющий прямое соединение.
Исключение:
IllegalArgumentException - если аргумент равен null

connectFailed

public abstract void connectFailed(URI uri,
                                   SocketAddress sa,
                                   IOException ioe)

Вызывается для указания того, что соединение с прокси/соксом-сервером не может быть установлено. Реализация этого метода может временно удалить прокси или изменить порядок прокси, возвращаемых методом select(URI), используя адрес и исключение IOException, пойманное при попытке подключения.

Параметры:
uri - URI, по которому прокси не смог выполнить свою задачу.
sa - Адрес сокета прокси/SOCKS-сервера
ioe - Исключение ввода-вывода, сгенерированное при неудачном подключении.
Исключение:
IllegalArgumentException - если любой из аргументов равен null

© 1993, 2020, 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