Spec-Zone.ru › OpenJDK 21

Класс RMIConnector

java.lang.Object
javax.management.remote.rmi.RMIConnector
Все реализованные интерфейсы:
Closeable, Serializable, AutoCloseable, JMXAddressable, JMXConnector
public class RMIConnector extends Object implements JMXConnector, Serializable, JMXAddressable

Подключение к удаленному соединению RMI. Обычно такие подключения создаются с помощью JMXConnectorFactory. Однако специализированные приложения могут использовать этот класс напрямую, например, с заглушкой RMIServer, полученной без использования JNDI.

С:
1.5
См. также:
  • Сериализованная форма

Краткое описание полей

Поля, объявленные в интерфейсе javax.management.remote.JMXConnector

CREDENTIALS

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

Конструктор Описание
RMIConnector(JMXServiceURL url, Map<String,?> environment)
Создает RMIConnector, который будет подключать сервер RMI-соединения к указанному адресу.
RMIConnector(RMIServer rmiServer, Map<String,?> environment)
Создает RMIConnector с использованием указанной заглушки RMI.

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

Модификатор и тип Метод Описание
void addConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Добавляет слушателя, чтобы получать информацию о изменениях состояния подключения.
void close()
Закрывает клиентское соединение с сервером.
void connect()
Устанавливает подключение к серверу соединения.
void connect(Map<String,?> environment)
Устанавливает подключение к серверу соединения.
JMXServiceURL getAddress()
Адрес этого соединения.
String getConnectionId()
Получает идентификатор этого соединения с сервера соединения.
MBeanServerConnection getMBeanServerConnection()
Возвращает объект MBeanServerConnection, представляющий удаленный сервер MBean.
MBeanServerConnection getMBeanServerConnection(Subject delegationSubject)
Возвращает объект MBeanServerConnection , представляющий удаленный сервер MBean, на котором операции выполняются от имени предоставленного субъекта делегирования.
void removeConnectionNotificationListener(NotificationListener listener)
Удаляет слушателя из списка, для получения уведомлений о изменениях состояния.
void removeConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Удаляет слушателя из списка, для получения уведомлений о изменениях состояния.
String toString()
Возвращает строковое представление этого объекта.

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

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

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

RMIConnector

public RMIConnector(JMXServiceURL url, Map<String,?> environment)

Создает RMIConnector для подключения сервера RMI-коннектора к указанному адресу.

Адрес может ссылаться непосредственно на сервер коннектора, используя следующий синтаксис:

 service:jmx:rmi://[host[:port]]/stub/encoded-stub
 

(Здесь квадратные скобки [] не являются частью адреса, но указывают на то, что хост и порт являются необязательными.)

Адрес может также указывать, где найти RMI-заглушку через JNDI, используя следующий синтаксис:

 service:jmx:rmi://[host[:port]]/jndi/jndi-name
 

Реализация также может распознавать дополнительные синтаксические конструкции адресов, например:

 service:jmx:myprotocolname://[host[:port]]/stub/encoded-stub
 
Параметры:
url - адрес сервера RMI-коннектора.
environment - дополнительные атрибуты, определяющие способ подключения. Для адресов на основе JNDI эти атрибуты могут включать атрибуты JNDI, распознаваемые InitialContext. Этот параметр может быть null, что эквивалентно пустому Map.
Исключения:
IllegalArgumentException - если url равно null.

RMIConnector

public RMIConnector(RMIServer rmiServer, Map<String,?> environment)

Создает RMIConnector с использованием указанной RMI-заглушки.

Параметры:
rmiServer - RMI-заглушка, представляющая сервер RMI-коннектора.
environment - дополнительные атрибуты, определяющие способ подключения. Этот параметр может быть null, что эквивалентно пустому Map.
Исключения:
IllegalArgumentException - если rmiServer равно null.

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

toString

public String toString()

Возвращает строковое представление этого объекта. В общем случае метод toString возвращает строку, "текстово представляющую" этот объект. Результат должен быть кратким, но информативным представлением, удобным для чтения человеком.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого объекта.

getAddress

public JMXServiceURL getAddress()

Адрес этого коннектора.

Определено в:
getAddress в интерфейсе JMXAddressable
Возвращает:
адрес этого коннектора или null, если он отсутствует.
С:
1.6

connect

public void connect() throws IOException
Описание скопировано из интерфейса: JMXConnector

Устанавливает соединение с сервером коннектора. Этот метод эквивалентен connect(null).

Определено в:
connect в интерфейсе JMXConnector
Исключения:
IOException - если подключение не удалось из-за проблемы с общением

connect

public void connect(Map<String,?> environment) throws IOException
Описание скопировано из интерфейса: JMXConnector

Устанавливает соединение с сервером коннектора.

Если метод connect уже был успешно вызван для этого объекта, повторный вызов не окажет влияния. Однако, если метод JMXConnector.close() был вызван после connect, новый вызов connect вызовет IOException.

В противном случае, либо метод connect никогда не вызывался для этого объекта, либо он был вызван, но произвел исключение. Тогда вызов connect попытается установить соединение с сервером коннектора.

Определено в:
connect в интерфейсе JMXConnector
Параметры:
environment - свойства подключения. Свойства в этом map переопределяют свойства в map, указанном при создании JMXConnector, если таковые имеются. Этот параметр может быть null, что эквивалентно пустому map.
Исключения:
IOException - если подключение не удалось из-за проблемы с общением

getConnectionId

public String getConnectionId() throws IOException
Описание скопировано из интерфейса: JMXConnector

Получает идентификатор этого соединения от сервера коннектора. Для данного сервера коннектора каждое соединение будет иметь уникальный идентификатор, который не изменяется в течение срока действия соединения.

Определено в:
getConnectionId в интерфейсе JMXConnector
Возвращает:
уникальный идентификатор этого соединения. Он совпадает с идентификатором, который сервер коннектора включает в свои JMXConnectionNotificationы. package description описывает соглашения об идентификаторах соединений.
Исключения:
IOException - если идентификатор соединения получить не удается, например, из-за закрытого или прерванного соединения.

getMBeanServerConnection

public MBeanServerConnection getMBeanServerConnection() throws IOException
Описание скопировано из интерфейса: JMXConnector

Возвращает объект MBeanServerConnection , представляющий удаленный сервер MBean. Для данного JMXConnector, два успешных вызова этого метода обычно возвращают один и тот же объект MBeanServerConnection, хотя это и не обязательно.

Для каждого метода в возвращаемом MBeanServerConnection, вызов метода вызывает соответствующий метод на удаленном сервере MBean. Значение, возвращаемое методом сервера MBean, возвращается клиенту. Если метод сервера MBean вызывает Exception, то тот же Exception отобразится клиенту. Если метод сервера MBean или попытка вызвать его вызывает Error, то Error оборачивается в JMXServerErrorException, что видно клиенту.

Вызов этого метода эквивалентен вызову getMBeanServerConnection(null), что означает, что делегированный субъект не указан и все операции, вызываемые на MBeanServerConnection , должны использовать аутентифицированный субъект, если он есть.

Определено в:
getMBeanServerConnection в интерфейсе JMXConnector
Возвращает:
объект, реализующий интерфейс MBeanServerConnection путём перенаправления его методов на удалённый сервер MBean.
Исключения:
IOException - если не удалось создать допустимый MBeanServerConnection, например, потому что соединение с удаленным сервером MBean ещё не установлено (методом connect), или оно было закрыто, или прервано.

getMBeanServerConnection

public MBeanServerConnection getMBeanServerConnection(Subject delegationSubject) throws IOException
Описание скопировано из интерфейса: JMXConnector

Возвращает объект MBeanServerConnection , представляющий удаленный сервер MBean, на котором операции выполняются от имени предоставленного делегированного субъекта. Для данного JMXConnector и Subject, два успешных вызова этого метода обычно возвращают один и тот же объект MBeanServerConnection, хотя это и не обязательно.

Для каждого метода в возвращаемом MBeanServerConnection, вызов метода вызывает соответствующий метод на удаленном сервере MBean от имени указанного делегированного субъекта вместо аутентифицированного субъекта. Значение, возвращаемое методом сервера MBean, возвращается клиенту. Если метод сервера MBean вызывает Exception, то тот же Exception отобразится клиенту. Если метод сервера MBean или попытка вызвать его вызывает Error, то Error оборачивается в JMXServerErrorException, что видно клиенту.

Определено в:
getMBeanServerConnection в интерфейсе JMXConnector
Параметры:
delegationSubject - Subject , от имени которого будут выполняться запросы. Может быть null, в этом случае запросы будут выполняться от имени аутентифицированного субъекта, если он есть.
Возвращает:
объект, реализующий интерфейс MBeanServerConnection путем перенаправления своих методов на удаленный сервер MBean от имени заданного делегированного субъекта.
Исключения:
IOException - если не удалось создать допустимый MBeanServerConnection, например, потому что соединение с удаленным сервером MBean ещё не установлено (методом connect), или оно было закрыто, или прервано.

addConnectionNotificationListener

public void addConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Описание скопировано из интерфейса: JMXConnector

Добавляет слушателя, который будет получать уведомления о изменениях состояния соединения. Слушатель будет получать уведомления типа JMXConnectionNotification. Реализация может отправлять и другие типы уведомлений.

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

Specified by:
addConnectionNotificationListener в интерфейсе JMXConnector
Parameters:
listener — слушатель для получения уведомлений о состоянии соединения.
filter — фильтр для выбора уведомлений, которые будут переданы слушателю, или null, если должны быть переданы все уведомления.
handback — объект, который будет передан слушателю вместе с каждым уведомлением. Может быть null.
See Also:
  • JMXConnector.removeConnectionNotificationListener(javax.management.NotificationListener)
  • NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

removeConnectionNotificationListener

public void removeConnectionNotificationListener(NotificationListener listener) throws ListenerNotFoundException
Описание скопировано из интерфейса: JMXConnector

Удаляет слушателя из списка для получения уведомлений о изменениях статуса. Слушатель должен быть предварительно добавлен. Если существует более одного соответствующего слушателя, все они удаляются.

Specified by:
removeConnectionNotificationListener в интерфейсе JMXConnector
Parameters:
listener — слушатель для получения уведомлений о состоянии соединения.
Throws:
ListenerNotFoundException — если слушатель не зарегистрирован в этом JMXConnector.
See Also:
  • JMXConnector.removeConnectionNotificationListener(NotificationListener, NotificationFilter, Object)
  • JMXConnector.addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
  • NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

removeConnectionNotificationListener

public void removeConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws ListenerNotFoundException
Описание скопировано из интерфейса: JMXConnector

Удаляет слушателя из списка для получения уведомлений о изменениях статуса. Слушатель должен быть предварительно добавлен с теми же тремя параметрами. Если существует более одного соответствующего слушателя, удаляется только один.

Specified by:
removeConnectionNotificationListener в интерфейсе JMXConnector
Parameters:
listener — слушатель для получения уведомлений о состоянии соединения.
filter — фильтр для выбора уведомлений, которые будут переданы слушателю. Может быть null.
handback — объект, который будет передан слушателю вместе с каждым уведомлением. Может быть null.
Throws:
ListenerNotFoundException — если слушатель не зарегистрирован в этом JMXConnector, или не зарегистрирован с заданным фильтром и обратной передачей.
See Also:
  • JMXConnector.removeConnectionNotificationListener(NotificationListener)
  • JMXConnector.addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
  • NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

close

public void close() throws IOException
Описание скопировано из интерфейса: JMXConnector

Закрывает клиентское соединение с сервером. Любой текущий или новый запрос, использующий MBeanServerConnection, возвращаемый JMXConnector.getMBeanServerConnection(), получит IOException.

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

Закрытие соединения — потенциально медленная операция. Например, если сервер упал, операция закрытия может ожидать таймаута сетевого протокола. Вызывающие стороны, которые не хотят блокироваться при закрытии соединения, должны сделать это в отдельном потоке.

Specified by:
close в интерфейсе AutoCloseable
Specified by:
close в интерфейсе Closeable
Specified by:
close в интерфейсе JMXConnector
Throws:
IOException — если соединение не может быть закрыто корректно. Если это исключение возникает, неизвестно, закрыта ли серверная часть соединения корректно.

© 1993, 2023, 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.
https://docs.oracle.com/en/java/javase/21/docs/api/java.management.rmi/javax/management/remote/rmi/RMIConnector.html

Spec-Zone.ru

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