Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class RMISocketFactory extends Object implements RMIClientSocketFactory, RMIServerSocketFactory
RMISocketFactory
экземпляр используется временем выполнения RMI, чтобы получить сокеты клиента и сервера для вызовов RMI. Приложение может использовать setSocketFactory
метод, чтобы запросить, чтобы время выполнения RMI использовало свой экземпляр фабрики сокета вместо реализации по умолчанию.Используемая реализация фабрики сокета по умолчанию проходит через трехярусный подход к созданию клиентских сокетов. Во-первых, прямое сокетное соединение с удаленным VM предпринимается. Если это перестало работать (из-за брандмауэра), время выполнения использует HTTP с явным номером порта сервера. Если брандмауэр не позволяет этот тип передачи, то HTTP к сценарию cgi-мусорного-ведра на сервере привык к POST вызов RMI.
Конструктор и Описание |
---|
RMISocketFactory()
Конструкции
RMISocketFactory . |
Модификатор и Тип | Метод и Описание |
---|---|
abstract ServerSocket |
createServerSocket(int port)
Создайте сокет сервера на указанном порту (порт 0 указывает на анонимный порт).
|
abstract Socket |
createSocket(String host, int port)
Создает клиентский сокет, соединенный с указанным узлом и портом.
|
static RMISocketFactory |
getDefaultSocketFactory()
Возвращает ссылку на фабрику сокета по умолчанию, используемую этой реализацией RMI.
|
static RMIFailureHandler |
getFailureHandler()
Возвращает обработчик для отказа создания сокета, установленного
setFailureHandler метод. |
static RMISocketFactory |
getSocketFactory()
Возвращает фабрику сокета, установленную
setSocketFactory метод. |
static void |
setFailureHandler(RMIFailureHandler fh)
Устанавливает обработчик отказа, который вызовет время выполнения RMI, если создание сокета сервера перестало работать.
|
static void |
setSocketFactory(RMISocketFactory fac)
Установите глобальную фабрику сокета, от которой RMI получает сокеты (если удаленный объект не связывается с определенным клиентом и/или фабрикой сокета сервера).
|
public RMISocketFactory()
RMISocketFactory
.public abstract Socket createSocket(String host, int port) throws IOException
createSocket
в интерфейсе RMIClientSocketFactory
host
- имя хостаport
- номер портаIOException
- если ошибка ввода-вывода происходит во время создания сокетаpublic abstract ServerSocket createServerSocket(int port) throws IOException
createServerSocket
в интерфейсе RMIServerSocketFactory
port
- номер портаIOException
- если ошибка ввода-вывода происходит во время создания сокета сервераpublic static void setSocketFactory(RMISocketFactory fac) throws IOException
fac
- фабрика сокетаIOException
- если фабрика сокета RMI уже устанавливаетсяSecurityException
- если менеджер безопасности существует и checkSetFactory
метод не позволяет работу.getSocketFactory()
, SecurityManager.checkSetFactory()
public static RMISocketFactory getSocketFactory()
setSocketFactory
метод. Возвраты null
если никакая фабрика сокета не была установлена.setSocketFactory(RMISocketFactory)
public static RMISocketFactory getDefaultSocketFactory()
getSocketFactory
возвраты null
.public static void setFailureHandler(RMIFailureHandler fh)
Если есть менеджер безопасности, этот метод первые вызовы менеджер безопасности checkSetFactory
метод, чтобы гарантировать работу позволяется. Это могло привести к a SecurityException
.
fh
- обработчик отказаSecurityException
- если менеджер безопасности существует и checkSetFactory
метод не позволяет работу.getFailureHandler()
, RMIFailureHandler.failure(Exception)
public static RMIFailureHandler getFailureHandler()
setFailureHandler
метод.setFailureHandler(RMIFailureHandler)
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.