Интерфейс JMXConnector
- Все суперинтерфейсы:
-
AutoCloseable,Closeable
- Все известные реализующие классы:
RMIConnector
public interface JMXConnector extends Closeable
Клиентская часть подключения к API JMX. Объект этого типа может использоваться для установления соединения с сервером подключения.
Новорожденный объект этого типа не подключен. Его метод connect должен быть вызван перед его использованием. Однако объекты, созданные методом JMXConnectorFactory.connect, уже подключены.
- С тех пор:
- 1.5
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final String |
CREDENTIALS |
Имя атрибута, который указывает учетные данные для отправки на сервер подключения во время подключения. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addConnectionNotificationListener |
Добавляет слушателя для получения уведомлений о изменениях в статусе подключения. |
void |
close() |
Закрывает клиентское соединение с сервером. |
void |
connect() |
Устанавливает соединение с сервером подключения. |
void |
connect |
Устанавливает соединение с сервером подключения. |
String |
getConnectionId() |
Получает идентификатор этого подключения с сервера подключения. |
MBeanServerConnection |
getMBeanServerConnection() |
Возвращает объект MBeanServerConnection, представляющий удаленный сервер MBean. |
MBeanServerConnection |
getMBeanServerConnection |
Устаревший, для удаления: Этот элемент API может быть удалён в будущей версии. Этот метод поддерживал функцию делегирования субъекта устаревшей версии и полезен только в сочетании с другими API, которые устарели и могут быть удалены в будущем выпуске. |
void |
removeConnectionNotificationListener |
Удаляет слушателя из списка для получения уведомлений о изменениях в статусе. |
void |
removeConnectionNotificationListener |
Удаляет слушателя из списка для получения уведомлений о изменениях в статусе. |
Подробное описание полей
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
@Deprecated(since="21", forRemoval=true) MBeanServerConnection getMBeanServerConnection(Subject delegationSubject) throws IOException
Возвращает объект MBeanServerConnection , представляющий удалённый сервер MBean, для которого операции выполняются от имени предоставленного предмета делегирования. Для данного JMXConnector и Subject, два успешных вызова этого метода, как правило, возвращают один и тот же объект MBeanServerConnection, хотя это не обязательно.
Для каждого метода в возвращённом MBeanServerConnection, вызов метода вызывает соответствующий метод на удалённом сервере MBean от имени данного предмета делегирования вместо аутентифицированного предмета. Возвращаемое значение метода сервера MBean является значением, возвращаемым клиенту. Если метод сервера MBean приводит к Exception, то тот же Exception виден клиенту. Если метод сервера MBean или попытка его вызова приводит к Error, то Error обернут в JMXServerErrorException, который виден клиенту.
- Параметры:
-
delegationSubject- предметSubject, от имени которого будут выполняться запросы. Может быть null, в этом случае запросы будут выполняться от имени аутентифицированного Subject, если он есть. - Возвращает:
- объект, реализующий интерфейс
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
void removeConnectionNotificationListener(NotificationListener listener) throws ListenerNotFoundException
Удаляет слушателя из списка, который должен получать уведомления об изменениях статуса. Слушатель должен был быть добавлен ранее. Если существует более одного соответствующего слушателя, все они удаляются.
- Параметры:
-
listener- слушатель для получения уведомлений о состоянии подключения. - Исключение:
-
NullPointerException- еслиlistenerравно null. -
ListenerNotFoundException- если слушатель не зарегистрирован в данномJMXConnector. - См. также:
Удалить слушателя уведомлений о подключении
void removeConnectionNotificationListener(NotificationListener l, NotificationFilter f, Object handback) throws ListenerNotFoundException
Удаляет слушателя из списка, который должен быть проинформирован о изменениях статуса. Слушатель должен был быть добавлен ранее с теми же тремя параметрами. Если существует более одного соответствующего слушателя, удаляется только один.
- Параметры:
-
l- слушатель, который будет получать уведомления о статусе подключения. -
f- фильтр, который выбирает, какие уведомления должны быть переданы слушателю. Может быть null. -
handback- объект, который будет передан слушателю вместе с каждым уведомлением. Может быть null. - Исключения:
-
ListenerNotFoundException- если слушатель не зарегистрирован с этимJMXConnector, или не зарегистрирован с заданным фильтром и обратной связью. - См. также:
getConnectionId
String getConnectionId() throws IOException
Получает ID этого подключения из сервера коннекторов. Для данного сервера коннекторов каждое подключение будет иметь уникальный ID, который не изменяется в течение жизни подключения.
- Возвращает:
- уникальный ID этого подключения. Он совпадает с ID, который сервер коннекторов включает в свои
JMXConnectionNotificationы.package descriptionописывает соглашения об идентификаторах подключений. - Исключения:
-
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/javax/management/remote/JMXConnector.html