Spec-Zone.ru › OpenJDK 25

Интерфейс RMIConnection

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

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

Пользовательский код обычно не обращается к этому интерфейсу. Он указан как часть общедоступного API, чтобы различные реализации этого API могли взаимодействовать друг с другом.

Чтобы параметры клиента десериализовались на стороне сервера с использованием правильного загрузчика классов, параметры клиента, например параметры, используемые для вызова метода, помещаются в MarshalledObject. Реализация этого интерфейса должна сначала получить соответствующий загрузчик классов для операции и её целевого объекта, а затем десериализовать упакованные параметры с помощью этого загрузчика классов. За исключением случаев, указанных отдельно, параметр типа MarshalledObject или MarshalledObject[] не должен иметь значение null; в противном случае поведение не определено.

Аспекты загрузки классов подробно описаны в спецификации JMX, версия 1.4

Большинство методов этого интерфейса соответствуют методам интерфейса MBeanServerConnection. Если какой-либо аспект поведения метода здесь не указан, он совпадает с поведением соответствующего метода MBeanServerConnection.

Делегирование субъекта JMX удалено. Все методы, принимающие параметр delegationSubject, выбрасывают UnsupportedOperationException, если он не равен null. Этот параметр сохранён для обеспечения взаимодействия со старыми удалёнными клиентами.

Начиная с:
1.5

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

Модификатор и тип Метод Описание
void addNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object).
Integer[] addNotificationListeners(ObjectName[] names, MarshalledObject[] filters, Subject[] delegationSubjects)
Обрабатывает метод MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object).
void close()
Закрывает это соединение.
ObjectInstance createMBean(String className, ObjectName name, MarshalledObject params, String[] signature, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]).
ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, MarshalledObject params, String[] signature, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]).
ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, ObjectName).
ObjectInstance createMBean(String className, ObjectName name, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName).
NotificationResult fetchNotifications(long clientSequenceNumber, int maxNotifications, long timeout)
Получает уведомления от сервера коннектора.
Object getAttribute(ObjectName name, String attribute, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.getAttribute(ObjectName, String).
AttributeList getAttributes(ObjectName name, String[] attributes, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.getAttributes(ObjectName, String[]).
String getConnectionId()
Возвращает идентификатор соединения.
String getDefaultDomain(Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.getDefaultDomain().
String[] getDomains(Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.getDomains().
Integer getMBeanCount(Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.getMBeanCount().
MBeanInfo getMBeanInfo(ObjectName name, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.getMBeanInfo(ObjectName).
ObjectInstance getObjectInstance(ObjectName name, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.getObjectInstance(ObjectName).
Object invoke(ObjectName name, String operationName, MarshalledObject params, String[] signature, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.invoke(ObjectName, String, Object[], String[]).
boolean isInstanceOf(ObjectName name, String className, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.isInstanceOf(ObjectName, String).
boolean isRegistered(ObjectName name, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.isRegistered(ObjectName).
Set<ObjectInstance> queryMBeans(ObjectName name, MarshalledObject query, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.queryMBeans(ObjectName, QueryExp).
Set<ObjectName> queryNames(ObjectName name, MarshalledObject query, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.queryNames(ObjectName, QueryExp).
void removeNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object).
void removeNotificationListener(ObjectName name, ObjectName listener, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName).
void removeNotificationListeners(ObjectName name, Integer[] listenerIDs, Subject delegationSubject)
Обрабатывает методы removeNotificationListener(ObjectName, NotificationListener) и removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object).
void setAttribute(ObjectName name, MarshalledObject attribute, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.setAttribute(ObjectName, Attribute).
AttributeList setAttributes(ObjectName name, MarshalledObject attributes, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.setAttributes(ObjectName, AttributeList).
void unregisterMBean(ObjectName name, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.unregisterMBean(ObjectName).

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

getConnectionId

String getConnectionId() throws IOException

Возвращает идентификатор соединения. Эта строка отличается для каждого открытого соединения с данным сервером соединителя RMI.

Возвращает:
идентификатор соединения
Выбрасывает:
IOException — если произошла общая ошибка связи.
См. также:
  • RMIConnector.connect

close

void close() throws IOException

Закрывает это соединение. После возврата из этого метода RMI-объект, реализующий этот интерфейс, будет снят с экспорта, поэтому последующие удалённые вызовы этого объекта завершатся неудачей.

Определено в:
close в интерфейсе AutoCloseable
Определено в:
close в интерфейсе Closeable
Выбрасывает:
IOException — если не удалось закрыть соединение или снять с экспорта удалённый объект либо произошёл сбой связи при передаче удалённого запроса на закрытие.

createMBean

ObjectInstance createMBean(String className, ObjectName name, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName).
Параметры:
className — имя класса создаваемого экземпляра MBean.
name — имя объекта MBean. Может быть null.
delegationSubject — должно быть null.
Возвращает:
Объект ObjectInstance, содержащий ObjectName и имя класса Java вновь созданного экземпляра MBean. Если содержащееся в нём значение ObjectName равно n, содержащим именем класса Java будет getMBeanInfo(n).getClassName().
Выбрасывает:
ReflectionException — оборачивает java.lang.ClassNotFoundException или java.lang.Exception, возникшее при попытке вызвать конструктор MBean.
InstanceAlreadyExistsException — MBean уже находится под управлением сервера MBean.
MBeanRegistrationException — метод preRegister (интерфейс MBeanRegistration) MBean выбросил исключение. Регистрация MBean не будет выполнена.
MBeanException — конструктор MBean выбросил исключение.
NotCompliantMBeanException — этот класс не является MBean, совместимым с JMX.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: переданное в параметре значение className равно null, переданное в параметре значение ObjectName содержит шаблон или для MBean не указано значение ObjectName.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

createMBean

ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, ObjectName).
Параметры:
className — имя класса создаваемого экземпляра MBean.
name — имя объекта MBean. Может быть null.
loaderName — имя объекта загрузчика классов, который будет использоваться.
delegationSubject — должно быть null.
Возвращает:
Объект ObjectInstance, содержащий ObjectName и имя класса Java вновь созданного экземпляра MBean. Если содержащееся в нём значение ObjectName равно n, содержащим именем класса Java будет getMBeanInfo(n).getClassName().
Выбрасывает:
ReflectionException — оборачивает java.lang.ClassNotFoundException или java.lang.Exception, возникшее при попытке вызвать конструктор MBean.
InstanceAlreadyExistsException — MBean уже находится под управлением сервера MBean.
MBeanRegistrationException — метод preRegister (интерфейс MBeanRegistration) MBean выбросил исключение. Регистрация MBean не будет выполнена.
MBeanException — конструктор MBean выбросил исключение.
NotCompliantMBeanException — этот класс не является MBean, совместимым с JMX.
InstanceNotFoundException — указанный загрузчик классов не зарегистрирован на сервере MBean.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: переданное в параметре значение className равно null, переданное в параметре значение ObjectName содержит шаблон или для MBean не указано значение ObjectName.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

createMBean

ObjectInstance createMBean(String className, ObjectName name, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]). Параметр Object[] обёрнут в MarshalledObject.
Параметры:
className — имя класса создаваемого экземпляра MBean.
name — имя объекта MBean. Может быть null.
params — массив, содержащий параметры вызываемого конструктора, заключённый в MarshalledObject. Заключённый в него массив может быть null, что эквивалентно пустому массиву.
signature — массив, содержащий сигнатуру вызываемого конструктора. Может быть null, что эквивалентно пустому массиву.
delegationSubject — должно быть null.
Возвращает:
Объект ObjectInstance, содержащий ObjectName и имя класса Java вновь созданного экземпляра MBean. Если содержащееся в нём значение ObjectName равно n, содержащим именем класса Java будет getMBeanInfo(n).getClassName().
Выбрасывает:
ReflectionException — оборачивает java.lang.ClassNotFoundException или java.lang.Exception, возникшее при попытке вызвать конструктор MBean.
InstanceAlreadyExistsException — MBean уже находится под управлением сервера MBean.
MBeanRegistrationException — метод preRegister (интерфейс MBeanRegistration) MBean выбросил исключение. Регистрация MBean не будет выполнена.
MBeanException — конструктор MBean выбросил исключение.
NotCompliantMBeanException — этот класс не является MBean, совместимым с JMX.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: переданное в параметре значение className равно null, переданное в параметре значение ObjectName содержит шаблон или для MBean не указано значение ObjectName.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

createMBean

ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]). Параметр Object[] обёрнут в MarshalledObject.
Параметры:
className — имя класса создаваемого экземпляра MBean.
name — имя объекта MBean. Может быть null.
loaderName — имя объекта загрузчика классов, который будет использоваться.
params — массив, содержащий параметры вызываемого конструктора, заключённый в MarshalledObject. Заключённый в него массив может быть null, что эквивалентно пустому массиву.
signature — массив, содержащий сигнатуру вызываемого конструктора. Может быть null, что эквивалентно пустому массиву.
delegationSubject — должно быть null.
Возвращает:
Объект ObjectInstance, содержащий ObjectName и имя класса Java вновь созданного экземпляра MBean. Если содержащееся в нём значение ObjectName равно n, содержащим именем класса Java будет getMBeanInfo(n).getClassName().
Выбрасывает:
ReflectionException — оборачивает java.lang.ClassNotFoundException или java.lang.Exception, возникшее при попытке вызвать конструктор MBean.
InstanceAlreadyExistsException — MBean уже находится под управлением сервера MBean.
MBeanRegistrationException — метод preRegister (интерфейс MBeanRegistration) MBean выбросил исключение. Регистрация MBean не будет выполнена.
MBeanException — конструктор MBean выбросил исключение.
NotCompliantMBeanException — этот класс не является MBean, совместимым с JMX.
InstanceNotFoundException — указанный загрузчик классов не зарегистрирован на сервере MBean.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: переданное в параметре значение className равно null, переданное в параметре значение ObjectName содержит шаблон или для MBean не указано значение ObjectName.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

unregisterMBean

void unregisterMBean(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, MBeanRegistrationException, IOException
Обрабатывает метод MBeanServerConnection.unregisterMBean(ObjectName).
Параметры:
name — имя объекта MBean, регистрацию которого нужно отменить.
delegationSubject — должно быть null.
Выбрасывает:
InstanceNotFoundException — указанный MBean не зарегистрирован на сервере MBean.
MBeanRegistrationException — метод preDeregister (интерфейс MBeanRegistration) MBean выбросил исключение.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта в параметре равно null или MBean, регистрацию которого вы пытаетесь отменить, является MBean MBeanServerDelegate.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

getObjectInstance

ObjectInstance getObjectInstance(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IOException
Обрабатывает метод MBeanServerConnection.getObjectInstance(ObjectName).
Параметры:
name — имя объекта MBean.
delegationSubject — должно быть null.
Возвращает:
Объект ObjectInstance, связанный с MBean, заданным параметром name. Содержащееся в нём значение ObjectName равно name, а содержащееся имя класса равно getMBeanInfo(name).getClassName().
Выбрасывает:
InstanceNotFoundException — указанный MBean не зарегистрирован на сервере MBean.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта в параметре равно null.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

queryMBeans

Set<ObjectInstance> queryMBeans(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
Обрабатывает метод MBeanServerConnection.queryMBeans(ObjectName, QueryExp). Параметр QueryExp обёрнут в MarshalledObject.
Параметры:
name — шаблон имени объекта, определяющий MBean, которые необходимо получить. Если значение равно null или домен и свойства ключей не указаны, будут получены все зарегистрированные MBean.
query — выражение запроса для выбора MBean, заключённое в MarshalledObject. Если MarshalledObject содержит значение null, для выбора MBean не будет применяться выражение запроса.
delegationSubject — должно быть null.
Возвращает:
Набор объектов ObjectInstance для выбранных MBean. Если ни один MBean не удовлетворяет запросу, возвращается пустой список.
Выбрасывает:
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

queryNames

Set<ObjectName> queryNames(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
Обрабатывает метод MBeanServerConnection.queryNames(ObjectName, QueryExp). Параметр QueryExp обёрнут в MarshalledObject.
Параметры:
name — шаблон имени объекта, определяющий имена MBean, которые необходимо получить. Если значение равно null или домен и свойства ключей не указаны, будут получены имена всех зарегистрированных MBean.
query — выражение запроса для выбора MBean, заключённое в MarshalledObject. Если MarshalledObject содержит значение null, для выбора MBean не будет применяться выражение запроса.
delegationSubject — должно быть null.
Возвращает:
Набор ObjectName для выбранных MBean. Если ни один MBean не удовлетворяет запросу, возвращается пустой список.
Выбрасывает:
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

isRegistered

boolean isRegistered(ObjectName name, Subject delegationSubject) throws IOException
Обрабатывает метод MBeanServerConnection.isRegistered(ObjectName).
Параметры:
name — имя объекта MBean, наличие которого необходимо проверить.
delegationSubject — должно быть null.
Возвращает:
True, если MBean уже зарегистрирован на сервере MBean, в противном случае — false.
Выбрасывает:
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта в параметре равно null.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

getMBeanCount

Integer getMBeanCount(Subject delegationSubject) throws IOException
Обрабатывает метод MBeanServerConnection.getMBeanCount().
Параметры:
delegationSubject — должно быть null.
Возвращает:
количество зарегистрированных MBean.
Выбрасывает:
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

getAttribute

Object getAttribute(ObjectName name, String attribute, Subject delegationSubject) throws MBeanException, AttributeNotFoundException, InstanceNotFoundException, ReflectionException, IOException
Обрабатывает метод MBeanServerConnection.getAttribute(ObjectName, String).
Параметры:
name — имя объекта MBean, у которого необходимо получить атрибут.
attribute — строка с именем получаемого атрибута.
delegationSubject — должно быть null.
Возвращает:
Значение полученного атрибута.
Выбрасывает:
AttributeNotFoundException — указанный атрибут недоступен в MBean.
MBeanException — оборачивает исключение, выброшенное методом получения атрибута MBean.
InstanceNotFoundException — указанный MBean не зарегистрирован на сервере MBean.
ReflectionException — оборачивает java.lang.Exception, выброшенное при попытке вызвать метод получения атрибута.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта или атрибут в параметре равны null.
RuntimeMBeanException — оборачивает исключение времени выполнения, выброшенное методом получения атрибута MBean.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.
См. также:
  • setAttribute(ObjectName, MarshalledObject, Subject)

getAttributes

AttributeList getAttributes(ObjectName name, String[] attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
Обрабатывает метод MBeanServerConnection.getAttributes(ObjectName, String[]).
Параметры:
name — имя объекта MBean, у которого получают атрибуты.
attributes — список получаемых атрибутов.
delegationSubject — должно быть null.
Возвращает:
Список полученных атрибутов.
Выбрасывает:
InstanceNotFoundException — указанный MBean не зарегистрирован на сервере MBean.
ReflectionException — при попытке вызвать метод getAttributes динамического MBean произошло исключение.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта или атрибуты в параметре равны null.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.
См. также:
  • setAttributes(ObjectName, MarshalledObject, Subject)

setAttribute

void setAttribute(ObjectName name, MarshalledObject attribute, Subject delegationSubject) throws InstanceNotFoundException, AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException, IOException
Обрабатывает метод MBeanServerConnection.setAttribute(ObjectName, Attribute). Параметр Attribute обёрнут в MarshalledObject.
Параметры:
name — имя MBean, для которого задаётся атрибут.
attribute — идентификатор атрибута и задаваемое ему значение, заключённые в MarshalledObject.
delegationSubject — должно быть null.
Выбрасывает:
InstanceNotFoundException — указанный MBean не зарегистрирован на сервере MBean.
AttributeNotFoundException — указанный атрибут недоступен в MBean.
InvalidAttributeValueException — указанное для атрибута значение недопустимо.
MBeanException — оборачивает исключение, выброшенное методом установки атрибута MBean.
ReflectionException — оборачивает java.lang.Exception, выброшенное при попытке вызвать метод установки атрибута.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта или атрибут в параметре равны null.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.
См. также:
  • getAttribute(ObjectName, String, Subject)

setAttributes

AttributeList setAttributes(ObjectName name, MarshalledObject attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
Обрабатывает метод MBeanServerConnection.setAttributes(ObjectName, AttributeList). Параметр AttributeList обёрнут в MarshalledObject.
Параметры:
name — имя объекта MBean, для которого задаются атрибуты.
attributes — список атрибутов: идентификаторы атрибутов и задаваемые им значения, заключённые в MarshalledObject.
delegationSubject — должно быть null.
Возвращает:
Список заданных атрибутов с новыми значениями.
Выбрасывает:
InstanceNotFoundException — указанный MBean не зарегистрирован на сервере MBean.
ReflectionException — при попытке вызвать метод getAttributes динамического MBean произошло исключение.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта или атрибуты в параметре равны null.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.
См. также:
  • getAttributes(ObjectName, String[], Subject)

invoke

Object invoke(ObjectName name, String operationName, MarshalledObject params, String[] signature, Subject delegationSubject) throws InstanceNotFoundException, MBeanException, ReflectionException, IOException
Обрабатывает метод MBeanServerConnection.invoke(ObjectName, String, Object[], String[]). Параметр Object[] обёрнут в MarshalledObject.
Параметры:
name — имя объекта MBean, для которого вызывается метод.
operationName — имя вызываемой операции.
params — массив параметров, передаваемых при вызове операции, заключённый в MarshalledObject. Заключённый в него массив может быть null, что эквивалентно пустому массиву.
signature — массив, содержащий сигнатуру операции. Объекты классов будут загружены с помощью того же загрузчика классов, который использовался для загрузки MBean, для которого вызвана операция. Может быть null, что эквивалентно пустому массиву.
delegationSubject — должно быть null.
Возвращает:
Объект, возвращённый операцией и представляющий результат её вызова для указанного MBean.
Выбрасывает:
InstanceNotFoundException — указанный MBean не зарегистрирован на сервере MBean.
MBeanException — оборачивает исключение, выброшенное вызванным методом MBean.
ReflectionException — оборачивает java.lang.Exception, выброшенное при попытке вызвать метод.
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
RuntimeOperationsException — оборачивает IllegalArgumentException, если name или operationName равно null.
UnsupportedOperationException — если delegationSubject не равно null.

getDefaultDomain

String getDefaultDomain(Subject delegationSubject) throws IOException
Обрабатывает метод MBeanServerConnection.getDefaultDomain().
Параметры:
delegationSubject — должно быть null.
Возвращает:
домен по умолчанию.
Выбрасывает:
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

getDomains

String[] getDomains(Subject delegationSubject) throws IOException
Обрабатывает метод MBeanServerConnection.getDomains().
Параметры:
delegationSubject — должно быть null.
Возвращает:
список доменов.
Выбрасывает:
SecurityException — если клиент не уполномочен выполнять эту операцию.
IOException — если произошла общая ошибка связи.
UnsupportedOperationException — если delegationSubject не равно null.

getMBeanInfo

MBeanInfo getMBeanInfo(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IntrospectionException, ReflectionException, IOException
Реализует метод MBeanServerConnection.getMBeanInfo(ObjectName).
Параметры:
name — имя анализируемого MBean
delegationSubject — должно быть null.
Возвращает:
Экземпляр MBeanInfo, позволяющий получить все атрибуты и операции этого MBean.
Вызывает:
IntrospectionException — при возникновении исключения во время интроспекции.
InstanceNotFoundException — если указанный MBean не найден.
ReflectionException — при возникновении исключения при попытке вызвать getMBeanInfo динамического MBean.
SecurityException — если клиент не авторизован для выполнения этой операции.
IOException — при возникновении общего исключения связи.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта в параметре равно null.
UnsupportedOperationException — если delegationSubject не равно null.

isInstanceOf

boolean isInstanceOf(ObjectName name, String className, Subject delegationSubject) throws InstanceNotFoundException, IOException
Реализует метод MBeanServerConnection.isInstanceOf(ObjectName, String).
Параметры:
name — ObjectName MBean.
className — имя класса.
delegationSubject — должно быть null.
Возвращает:
true, если указанный MBean является экземпляром указанного класса согласно приведенным выше правилам, и false в противном случае.
Вызывает:
InstanceNotFoundException — если указанный MBean не зарегистрирован на сервере MBean.
SecurityException — если клиент не авторизован для выполнения этой операции.
IOException — при возникновении общего исключения связи.
RuntimeOperationsException — оборачивает java.lang.IllegalArgumentException: имя объекта в параметре равно null.
UnsupportedOperationException — если delegationSubject не равно null.

addNotificationListener

void addNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, IOException
Реализует метод MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object). Параметр NotificationFilter обернут в MarshalledObject. Параметр Object (обратной связи) также обернут в MarshalledObject.
Параметры:
name — имя MBean, к которому следует добавить слушателя.
listener — имя объекта слушателя, который будет обрабатывать уведомления, отправленные зарегистрированным MBean.
filter — объект фильтра, инкапсулированный в MarshalledObject. Если фильтр, инкапсулированный в MarshalledObject, имеет значение null, перед обработкой уведомлений фильтрация выполняться не будет.
handback — контекст, который следует передать слушателю при отправке уведомления, инкапсулированный в MarshalledObject.
delegationSubject — должно быть null.
Вызывает:
InstanceNotFoundException — имя MBean слушателя уведомлений или MBean, отправляющего уведомления, не соответствует ни одному из зарегистрированных MBean.
RuntimeOperationsException — оборачивает IllegalArgumentException. MBean, указанный в listener, существует, но не реализует интерфейс NotificationListener, либо name или listener равен null.
SecurityException — если клиент не авторизован для выполнения этой операции.
IOException — при возникновении общего исключения связи.
UnsupportedOperationException — если delegationSubject не равно null.
См. также:
  • removeNotificationListener(ObjectName, ObjectName, Subject)
  • removeNotificationListener(ObjectName, ObjectName, MarshalledObject, MarshalledObject, Subject)

removeNotificationListener

void removeNotificationListener(ObjectName name, ObjectName listener, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
Реализует метод MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName).
Параметры:
name — имя MBean, от которого следует удалить слушателя.
listener — имя объекта слушателя, который следует удалить.
delegationSubject — должно быть null.
Вызывает:
InstanceNotFoundException — указанное имя MBean не соответствует ни одному из зарегистрированных MBean.
ListenerNotFoundException — слушатель не зарегистрирован в MBean.
SecurityException — если клиент не авторизован для выполнения этой операции.
IOException — при возникновении общего исключения связи.
RuntimeOperationsException — оборачивает IllegalArgumentException, если name или listener равен null.
UnsupportedOperationException — если delegationSubject не равно null.
См. также:
  • addNotificationListener(ObjectName, ObjectName, MarshalledObject, MarshalledObject, Subject)

removeNotificationListener

void removeNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
Реализует метод MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object). Параметр NotificationFilter обернут в MarshalledObject. Параметр Object также обернут в MarshalledObject.
Параметры:
name — имя MBean, от которого следует удалить слушателя.
listener — слушатель, ранее добавленный к этому MBean.
filter — фильтр, указанный при добавлении слушателя, инкапсулированный в MarshalledObject.
handback — обратная связь, указанная при добавлении слушателя, инкапсулированная в MarshalledObject.
delegationSubject — должно быть null.
Вызывает:
InstanceNotFoundException — указанное имя MBean не соответствует ни одному из зарегистрированных MBean.
ListenerNotFoundException — слушатель не зарегистрирован в MBean или зарегистрирован с другим фильтром и значением обратной связи.
SecurityException — если клиент не авторизован для выполнения этой операции.
IOException — при возникновении общего исключения связи.
RuntimeOperationsException — оборачивает IllegalArgumentException, если name или listener равен null.
UnsupportedOperationException — если delegationSubject не равно null.
См. также:
  • addNotificationListener(ObjectName, ObjectName, MarshalledObject, MarshalledObject, Subject)

addNotificationListeners

Integer[] addNotificationListeners(ObjectName[] names, MarshalledObject[] filters, Subject[] delegationSubjects) throws InstanceNotFoundException, IOException

Реализует метод MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object).

Регистрирует получение уведомлений от указанных MBean, соответствующих заданным фильтрам. Впоследствии удаленный клиент может получать уведомления с помощью метода fetchNotifications.

Для каждого слушателя исходные NotificationListener и handback хранятся на стороне клиента; чтобы клиент мог их идентифицировать, сервер создает и возвращает уникальный listenerID. Этот listenerID передается удаленному клиенту вместе с Notifications.

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

Параметры:
names — ObjectNames, идентифицирующие MBean, отправляющие уведомления.
filters — массив маршализованных представлений NotificationFilters. Элементы этого массива могут быть null.
delegationSubjects — должно быть null или массивом, не содержащим ни одной ненулевой записи.
Возвращает:
массив listenerIDs, идентифицирующих локальные слушатели. Число элементов этого массива совпадает с числом параметров.
Вызывает:
IllegalArgumentException — если names или filters равно null, если names содержит элемент null или если размеры этих двух массивов не совпадают.
ClassCastException — если один из элементов filters демаршализуется в ненулевой объект, который не является NotificationFilter.
InstanceNotFoundException — если один из names не соответствует ни одному зарегистрированному MBean.
SecurityException — если для одного из MBean у клиента нет полномочий для добавления слушателя.
IOException — при возникновении общего исключения связи.
UnsupportedOperationException — если delegationSubjects не равно null и содержит ненулевые записи.

removeNotificationListeners

void removeNotificationListeners(ObjectName name, Integer[] listenerIDs, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException

Реализует методы removeNotificationListener(ObjectName, NotificationListener) и removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object).

Этот метод удаляет один или несколько NotificationListener из указанного MBean на сервере MBean.

Идентификаторы NotificationListeners — это идентификаторы, возвращенные методом addNotificationListeners(ObjectName[], MarshalledObject[], Subject[]).

Параметры:
name — ObjectName, идентифицирующий MBean, отправляющий уведомления.
listenerIDs — список идентификаторов слушателей, которые необходимо удалить.
delegationSubject — должно быть null.
Вызывает:
InstanceNotFoundException — если указанный name не соответствует ни одному зарегистрированному MBean.
ListenerNotFoundException — если один из слушателей не найден на стороне сервера. Это исключение может возникнуть, если MBean удалил слушателя по какой-либо причине, отличной от вызова MBeanServer.removeNotificationListener.
SecurityException — если клиент не авторизован для удаления слушателей.
IOException — при возникновении общего исключения связи.
IllegalArgumentException — если ObjectName или listenerIds равно null либо если listenerIds содержит элемент null.
UnsupportedOperationException — если delegationSubject не равно null.

fetchNotifications

NotificationResult fetchNotifications(long clientSequenceNumber, int maxNotifications, long timeout) throws IOException

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

Уведомление может быть включено в результат, если его порядковый номер не меньше clientSequenceNumber и этот клиент зарегистрировал хотя бы одного слушателя для MBean, отправившего уведомление, с фильтром, пропускающим это уведомление. Каждый слушатель, которому требуется это уведомление, идентифицируется целочисленным идентификатором, возвращенным методом addNotificationListeners(ObjectName[], MarshalledObject[], Subject[]).

Параметры:
clientSequenceNumber — первый порядковый номер, представляющий интерес для клиента. Если значение отрицательное, оно трактуется как порядковый номер следующего уведомления.
maxNotifications — максимальное количество различных уведомлений, которые следует вернуть. Массив TargetedNotification в возвращаемом объекте NotificationResult может содержать больше элементов, если одно и то же уведомление встречается несколько раз. Поведение не определено, если этот параметр отрицательный.
timeout — максимальное время ожидания поступления уведомления в миллисекундах. Значение 0 указывает, что метод не должен ждать при отсутствии уведомлений и должен сразу вернуть результат. Значение Long.MAX_VALUE указывает на отсутствие времени ожидания. Поведение не определено, если этот параметр отрицательный.
Возвращает:
Объект NotificationResult.
Вызывает:
IOException — при возникновении общего исключения связи.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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/25/docs/api/java.management.rmi/javax/management/remote/rmi/RMIConnection.html

Spec-Zone.ru

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