Интерфейс JMXConnector

Все суперинтерфейсы:
AutoCloseable, Closeable
Все известные реализующие классы:
RMIConnector
public interface JMXConnector
extends Closeable

Клиентский конец подключения к API JMX. Объект этого типа может быть использован для установления соединения с сервером подключения.

Новый созданный объект этого типа находится в состоянии отключения. Его метод connect должен быть вызван перед его использованием. Однако, объекты, созданные с помощью JMXConnectorFactory.connect, уже подключены.

С момента:
1.5

Поля

Модификатор и тип Поле Описание
static String CREDENTIALS

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

Методы

Модификатор и тип Метод Описание
void addConnectionNotificationListener​(NotificationListener listener, NotificationFilter filter, Object handback)

Добавляет слушателя для получения уведомлений о изменениях статуса подключения.

void close()

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

void connect()

Устанавливает соединение с сервером подключения.

void connect​(Map<String,​?> env)

Устанавливает соединение с сервером подключения.

String getConnectionId()

Получает идентификатор этого соединения с сервера подключения.

MBeanServerConnection getMBeanServerConnection()

Возвращает объект MBeanServerConnection, представляющий удаленный сервер MBean.

MBeanServerConnection getMBeanServerConnection​(Subject delegationSubject)

Возвращает объект MBeanServerConnection, представляющий удаленный сервер MBean, на котором операции выполняются от имени предоставленного субъекта делегирования.

void removeConnectionNotificationListener​(NotificationListener listener)

Удаляет слушателя из списка для получения уведомлений о изменениях статуса.

void removeConnectionNotificationListener​(NotificationListener l, NotificationFilter f, Object handback)

Удаляет слушателя из списка для получения уведомлений о изменениях статуса.

Поля

CREDENTIALS

static final String CREDENTIALS

Имя атрибута, определяющего учетные данные для отправки на сервер подключения во время соединения. Значение, связанное с этим атрибутом, если оно есть, является сериализуемым объектом соответствующего типа для JMXAuthenticator сервера.

См. также:
Постоянные значения поля

Методы

connect

void connect()
      throws IOException

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

Исключение:
IOException - если соединение не удалось установить из-за проблемы с коммуникацией.
SecurityException - если соединение не удалось установить по соображениям безопасности.

connect

void connect(Map<String,​?> env)
      throws IOException

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

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

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

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

getMBeanServerConnection

MBeanServerConnection getMBeanServerConnection()
                                        throws IOException

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

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

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

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

getMBeanServerConnection

MBeanServerConnection getMBeanServerConnection(Subject delegationSubject)
                                        throws IOException

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

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

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

close

void close()
    throws IOException

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

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

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

Определено в:
close в интерфейсе AutoCloseable
Определено в:
close в интерфейсе Closeable
Исключение:
IOException - если соединение не может быть закрыто корректно. Если это исключение выброшено, неизвестно, был ли закрыт серверный конец соединения корректно.

addConnectionNotificationListener

void addConnectionNotificationListener(NotificationListener listener,
                                       NotificationFilter filter,
                                       Object handback)

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

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

Параметры:
listener - слушатель для получения уведомлений о статусе соединения.
filter - фильтр для выбора уведомлений, которые будут переданы слушателю, или null, если должны быть переданы все уведомления.
handback - объект, который будет передан слушателю вместе с каждым уведомлением. Может быть null.
Исключение:
NullPointerException - если listener равно null.
См. также:
removeConnectionNotificationListener(javax.management.NotificationListener), NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

removeConnectionNotificationListener

void removeConnectionNotificationListener(NotificationListener listener)
                                   throws ListenerNotFoundException

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

Параметры:
listener - слушатель для получения уведомлений о статусе соединения.
Исключение:
NullPointerException - если listener равно null.
ListenerNotFoundException - если слушатель не зарегистрирован в этом JMXConnector.
См. также:
removeConnectionNotificationListener(NotificationListener, NotificationFilter, Object), addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object), NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

removeConnectionNotificationListener

void removeConnectionNotificationListener(NotificationListener l,
                                          NotificationFilter f,
                                          Object handback)
                                   throws ListenerNotFoundException

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

Параметры:
l - слушатель для получения уведомлений о статусе соединения.
f - фильтр для выбора уведомлений, которые должны быть переданы слушателю. Может быть null.
handback - объект, который будет передан слушателю вместе с каждым уведомлением. Может быть null.
Исключение:
ListenerNotFoundException - если слушатель не зарегистрирован в этом JMXConnector, или не зарегистрирован с данным фильтром и возвращаемым объектом.
См. также:
removeConnectionNotificationListener(NotificationListener), addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object), NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

getConnectionId

String getConnectionId()
                throws IOException

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

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

© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.management/javax/management/remote/JMXConnector.html

Spec-Zone .ru
спецификации, руководства, описания, API