Spec-Zone.ru › OpenJDK 8

Класс SocketFactory

  • java.lang.Object
    • javax.net.SocketFactory
Прямые известные подклассы:
SSLSocketFactory

public abstract class SocketFactory
extends Object

Этот класс создает сокеты. Он может быть расширен другими фабриками, которые создают определённые подклассы сокетов и, таким образом, обеспечивают общий механизм добавления общедоступной функциональности на уровне сокетов.

Фабрики сокетов — простой способ захватить различные политики, связанные с создаваемыми сокетами, создавая такие сокеты таким образом, что для этого не требуется специальная настройка кода, который запрашивает сокеты:

  • Благодаря полиморфизму как фабрик, так и сокетов, разные типы сокетов могут использоваться одним и тем же кодом приложения, просто передавая ему разные типы фабрик.
  • Сами фабрики могут настраиваться с помощью параметров, используемых при создании сокета. Например, фабрики можно настраивать для возврата сокетов с различными таймаутами сетевых операций или уже настроенными параметрами безопасности.
  • Сокеты, возвращаемые приложению, могут быть подклассами java.net.Socket, что позволит им напрямую предоставлять новые API для функций, таких как сжатие, безопасность, маркировка записей, сбор статистики или туннелирование через брандмауэр.

Классы фабрик задаются механизмами конфигурации, специфичными для среды. Например, метод getDefault может возвращать фабрику, подходящую для конкретного пользователя или аплета, а фреймворк может использовать настроенную фабрику для своих целей.

С:
1.4
См. также:
ServerSocketFactory

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

Модификатор Конструктор и описание
protected SocketFactory()

Создаёт SocketFactory.

Методы

Модификатор и тип Метод и описание
Socket createSocket()

Создаёт несвязанный сокет.

abstract Socket createSocket(InetAddress host, int port)

Создаёт сокет и подключает его к указанному номеру порта по указанному адресу.

abstract Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort)

Создаёт сокет и подключает его к указанному удалённому адресу по указанному удалённому порту.

abstract Socket createSocket(String host, int port)

Создаёт сокет и подключает его к указанному удалённому хосту по указанному удалённому порту.

abstract Socket createSocket(String host, int port, InetAddress localHost, int localPort)

Создаёт сокет и подключает его к указанному удалённому хосту по указанному удалённому порту.

static SocketFactory getDefault()

Возвращает копию стандартной фабрики сокетов среды.

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

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

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

SocketFactory

protected SocketFactory()

Создаёт SocketFactory.

Методы

getDefault

public static SocketFactory getDefault()

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

Возвращает:
заводской сокет по умолчанию SocketFactory

createSocket

public Socket createSocket()
                    throws IOException

Создаёт неподключённый сокет.

Возвращает:
неподключённый сокет
Выбрасывает:
IOException - если сокет создать не удалось
См. также:
Socket.connect(java.net.SocketAddress), Socket.connect(java.net.SocketAddress, int), Socket()

createSocket

public abstract Socket createSocket(String host,
                                    int port)
                             throws IOException,
                                    UnknownHostException

Создаёт сокет и подключает его к указанному удалённому хосту на указанном удалённом порту. Этот сокет настраивается с использованием параметров сокета, установленных для этого фабричного объекта.

Если есть менеджер безопасности, его метод checkConnect вызывается с адресом хоста и port в качестве аргументов. Это может привести к исключению SecurityException.

Параметры:
host - имя хоста сервера, к которому необходимо подключиться, или null для адреса обратной связи.
port - порт сервера
Возвращает:
созданный Socket
Выбрасывает:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если существует менеджер безопасности, и его метод checkConnect не разрешает операцию.
UnknownHostException - если хост неизвестен
IllegalArgumentException - если параметр порта находится вне допустимого диапазона (от 0 до 65535 включительно).
См. также:
SecurityManager.checkConnect(java.lang.String, int), Socket(String, int)

createSocket

public abstract Socket createSocket(String host,
                                    int port,
                                    InetAddress localHost,
                                    int localPort)
                             throws IOException,
                                    UnknownHostException

Создаёт сокет и подключает его к указанному удалённому хосту на указанном удалённом порту. Сокет также будет привязан к локальному адресу и порту. Этот сокет настраивается с использованием параметров сокета, установленных для этого фабричного объекта.

Если есть менеджер безопасности, его метод checkConnect вызывается с адресом хоста и port в качестве аргументов. Это может привести к исключению SecurityException.

Параметры:
host - имя хоста сервера, к которому необходимо подключиться, или null для адреса обратной связи.
port - порт сервера
localHost - локальный адрес, к которому привязан сокет
localPort - локальный порт, к которому привязан сокет
Возвращает:
созданный Socket
Выбрасывает:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если существует менеджер безопасности, и его метод checkConnect не разрешает операцию.
UnknownHostException - если хост неизвестен
IllegalArgumentException - если параметр порта или локального порта находится вне допустимого диапазона (от 0 до 65535 включительно).
См. также:
SecurityManager.checkConnect(java.lang.String, int), Socket(String, int, java.net.InetAddress, int)

createSocket

public abstract Socket createSocket(InetAddress host,
                                    int port)
                             throws IOException

Создаёт сокет и подключает его к указанному порту на указанном адресе. Этот сокет настраивается с использованием параметров сокета, установленных для этого фабричного объекта.

Если есть менеджер безопасности, его метод checkConnect вызывается с адресом хоста и port в качестве аргументов. Это может привести к исключению SecurityException.

Параметры:
host - хост сервера
port - порт сервера
Возвращает:
созданный Socket
Выбрасывает:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если существует менеджер безопасности, и его метод checkConnect не разрешает операцию.
IllegalArgumentException - если параметр порта находится вне допустимого диапазона (от 0 до 65535 включительно).
NullPointerException - если host равно null.
См. также:
SecurityManager.checkConnect(java.lang.String, int), Socket(java.net.InetAddress, int)

createSocket

public abstract Socket createSocket(InetAddress address,
                                    int port,
                                    InetAddress localAddress,
                                    int localPort)
                             throws IOException

Создаёт сокет и подключает его к указанному удалённому адресу по указанному удалённому порту. Сокет также будет привязан к локальному адресу и порту. Сокет настраивается с помощью опций сокета, установленных для этого фабричного объекта.

Если существует менеджер безопасности, его метод checkConnect вызывается с адресом хоста и port в качестве аргументов. Это может привести к исключению SecurityException.

Параметры:
address - сетевой адрес сервера
port - порт сервера
localAddress - сетевой адрес клиента
localPort - порт клиента
Возвращает:
сокет Socket
Исключения:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkConnect не разрешает операцию.
IllegalArgumentException - если параметр порта или параметр локального порта находится вне указанного диапазона допустимых значений порта, который составляет от 0 до 65535 включительно.
NullPointerException - если address имеет значение null.
См. также:
SecurityManager.checkConnect(java.lang.String, int), Socket(java.net.InetAddress, int, java.net.InetAddress, int)

© 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