Spec-Zone.ru › OpenJDK 17

Класс RMIConnectionImpl

java.lang.Object
javax.management.remote.rmi.RMIConnectionImpl
Все реализованные интерфейсы:
Closeable, AutoCloseable, Remote, Unreferenced, RMIConnection
public class RMIConnectionImpl extends Object implements RMIConnection, Unreferenced

Реализация интерфейса RMIConnection. Пользовательский код обычно не ссылается на этот класс.

С момента:
1.5

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

Конструктор Описание
RMIConnectionImpl(RMIServerImpl rmiServer, String connectionId, ClassLoader defaultClassLoader, Subject subject, Map<String,?> env)
Создаёт новый RMIConnection.

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

Модификатор и тип Метод Описание
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).
String toString()
Возвращает строковое представление этого объекта.
void unreferenced()
Вызывается временем выполнения RMI после того, как время выполнения определит, что список ссылок, список клиентов, ссылающихся на удаленный объект, становится пустым.
void unregisterMBean(ObjectName name, Subject delegationSubject)
Обрабатывает метод MBeanServerConnection.unregisterMBean(ObjectName).

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

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

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

RMIConnectionImpl

public RMIConnectionImpl(RMIServerImpl rmiServer, String connectionId, ClassLoader defaultClassLoader, Subject subject, Map<String,?> env)
Создаёт новый RMIConnection. Это соединение может быть использовано с транспортом JRMP. Этот объект не экспортирует себя: ответственность за его надлежащее экспортирование лежит на вызывающей стороне (см. RMIJRMPServerImpl.makeClient(String,Subject)).
Параметры:
rmiServer - Объект RMIServerImpl, для которого создаётся это соединение. Поведение неопределено, если этот параметр равен null.
connectionId - Идентификатор этого соединения. Поведение неопределено, если этот параметр равен null.
defaultClassLoader - Класс загрузки по умолчанию, используемый при десериализации сериализованных объектов. Может быть null, что обозначает загрузчик классов по умолчанию.
subject - аутентифицированный субъект, используемый для авторизации. Может быть null, что обозначает, что ни один субъект не был аутентифицирован.
env - среда, содержащая атрибуты для нового RMIServerImpl. Может быть null, что эквивалентно пустому карте.

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

getConnectionId

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

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

Определено в:
getConnectionId в интерфейсе RMIConnection
Возвращает:
идентификатор соединения
Исключения:
IOException - если произошла общая ошибка связи.
См. также:
  • RMIConnector.connect

close

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

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

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

unreferenced

public void unreferenced()
Описание скопировано из интерфейса: Unreferenced
Вызывается RMI-средой в какой-то момент после того, как среда определит, что список ссылок, список клиентов, ссылающихся на удалённый объект, становится пустым.
Определено в:
unreferenced в интерфейсе Unreferenced

createMBean

public ObjectInstance createMBean(String className, ObjectName name, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName).
Определено в:
createMBean в интерфейсе RMIConnection
Параметры:
className - имя класса MBean, который должен быть создан.
name - имя объекта MBean. Может быть null.
delegationSubject - Subject, содержащий принципы делегирования, или 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 - Этот класс не является совместимым с JMX MBean.
IOException - если произошла общая ошибка связи.

createMBean

public ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, ObjectName).
Определено в:
createMBean в интерфейсе RMIConnection
Параметры:
className - имя класса MBean, который должен быть создан.
name - имя объекта MBean. Может быть null.
loaderName - имя объекта загрузчика классов, который должен быть использован.
delegationSubject - Subject содержащий принципы делегирования или 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 - Этот класс не является совместимым с JMX MBean.
InstanceNotFoundException - Указанный загрузчик классов не зарегистрирован в сервере MBean.
IOException - если произошла общая ошибка связи.

createMBean

public ObjectInstance createMBean(String className, ObjectName name, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]). Параметр Object[] обернут в MarshalledObject.
Определено в:
createMBean в интерфейсе RMIConnection
Параметры:
className - имя класса MBean, который должен быть создан.
name - имя объекта MBean. Может быть null.
params - массив, содержащий параметры вызываемого конструктора, инкапсулированные в MarshalledObject. Обернутый массив может быть null, что эквивалентно пустому массиву.
signature - массив, содержащий сигнатуру вызываемого конструктора. Может быть null, что эквивалентно пустому массиву.
delegationSubject - Subject содержащий принципы делегирования или 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 - Этот класс не является совместимым с JMX MBean.
IOException - если произошла общая ошибка связи.

createMBean

public ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]). Параметр Object[] упакован в MarshalledObject.
Specified by:
createMBean в интерфейсе RMIConnection
Parameters:
className - Имя класса управляемого объекта (MBean), который необходимо создать.
name - Имя объекта MBean. Может быть null.
loaderName - Имя объекта загрузчика классов, который необходимо использовать.
params - Массив параметров конструктора, который необходимо вызвать, упакованный в MarshalledObject. Упакованный массив может быть null, что эквивалентно пустому массиву.
signature - Массив сигнатур конструктора, который необходимо вызвать. Может быть null, что эквивалентно пустому массиву.
delegationSubject - Subject, содержащий принципалы делегирования, или null, если используется принципал аутентификации.
Returns:
Объект ObjectInstance, содержащий ObjectName и имя Java-класса вновь созданного MBean. Если содержащийся ObjectName равен n, содержащееся имя Java-класса равно getMBeanInfo(n).getClassName().
Throws:
ReflectionException - Обёртка java.lang.ClassNotFoundException или java.lang.Exception возникших при попытке вызвать конструктор MBean.
InstanceAlreadyExistsException - Управляемый объект (MBean) уже находится под управлением сервера управляемых объектов.
MBeanRegistrationException - Метод preRegister (интерфейс MBeanRegistration) MBean выбросил исключение. MBean не будет зарегистрирован.
MBeanException - Конструктор MBean выбросил исключение.
NotCompliantMBeanException - Данный класс не является совместимым с JMX управляемым объектом (MBean).
InstanceNotFoundException - Указанный загрузчик классов не зарегистрирован на сервере управляемых объектов.
IOException - если произошла общая ошибка при общении.

unregisterMBean

public void unregisterMBean(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, MBeanRegistrationException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.unregisterMBean(ObjectName).
Specified by:
unregisterMBean в интерфейсе RMIConnection
Parameters:
name - Имя объекта MBean, который нужно удалить из реестра.
delegationSubject - Subject содержащий принципалы делегирования, или null если используется принципал аутентификации.
Throws:
InstanceNotFoundException - Управляемый объект, указанный именем, не зарегистрирован на сервере управляемых объектов.
MBeanRegistrationException - Метод preDeregister (интерфейс MBeanRegistration) управляемого объекта выбросил исключение.
IOException - если произошла общая ошибка при общении.

getObjectInstance

public ObjectInstance getObjectInstance(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getObjectInstance(ObjectName).
Specified by:
getObjectInstance в интерфейсе RMIConnection
Parameters:
name - Имя объекта MBean.
delegationSubject - Subject содержащий принципалы делегирования, или null если используется принципал аутентификации.
Returns:
Объект ObjectInstance связанный с MBean, указанный именем name. Содержащийся ObjectName равен name, и содержащееся имя класса равно getMBeanInfo(name).getClassName().
Throws:
InstanceNotFoundException - Указанный MBean не зарегистрирован на сервере управляемых объектов.
IOException - если произошла общая ошибка при общении.

queryMBeans

public Set<ObjectInstance> queryMBeans(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.queryMBeans(ObjectName, QueryExp). QueryExp упакован в MarshalledObject.
Specified by:
queryMBeans в интерфейсе RMIConnection
Parameters:
name - Шаблон имени объекта MBean, определяющий управляемые объекты для извлечения. Если null или не указаны свойства домена и ключа, будут извлечены все зарегистрированные MBeans.
query - Выражение запроса для выбора управляемых объектов, упакованное в MarshalledObject. Если MarshalledObject содержит значение null, выражение запроса для выбора управляемых объектов не будет применено.
delegationSubject - Subject содержащий принципалы делегирования, или null если используется принципал аутентификации.
Returns:
Множество, содержащее объекты ObjectInstance для выбранных управляемых объектов. Если ни один MBean не удовлетворяет запросу, возвращается пустой список.
Throws:
IOException - если произошла общая ошибка при общении.

queryNames

public Set<ObjectName> queryNames(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.queryNames(ObjectName, QueryExp). QueryExp упакован в MarshalledObject.
Specified by:
queryNames в интерфейсе RMIConnection
Parameters:
name - Шаблон имени объекта MBean, определяющий имена управляемых объектов для извлечения. Если null или не указаны свойства домена и ключа, будут извлечены имена всех зарегистрированных MBeans.
query - Выражение запроса для выбора имён управляемых объектов, упакованное в MarshalledObject. Если MarshalledObject содержит значение null, выражение запроса для выбора имён управляемых объектов не будет применено.
delegationSubject - Subject содержащий принципалы делегирования, или null если используется принципал аутентификации.
Returns:
Множество, содержащее ObjectNames для выбранных MBeans. Если ни один MBean не удовлетворяет запросу, возвращается пустой список.
Throws:
IOException - если произошла общая ошибка при общении.

isRegistered

public boolean isRegistered(ObjectName name, Subject delegationSubject) throws IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.isRegistered(ObjectName).
Specified by:
isRegistered в интерфейсе RMIConnection
Parameters:
name - Имя объекта MBean, который необходимо проверить.
delegationSubject - Subject содержащий принципалы делегирования, или null если используется принципал аутентификации.
Returns:
True, если MBean уже зарегистрирован на сервере управляемых объектов, false в противном случае.
Throws:
IOException - если произошла общая ошибка при общении.

getMBeanCount

public Integer getMBeanCount(Subject delegationSubject) throws IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getMBeanCount().
Specified by:
getMBeanCount в интерфейсе RMIConnection
Parameters:
delegationSubject - Subject содержащий принципалы делегирования, или null если используется принципал аутентификации.
Returns:
количество зарегистрированных управляемых объектов (MBeans).
Throws:
IOException - если произошла общая ошибка при общении.

getAttribute

public Object getAttribute(ObjectName name, String attribute, Subject delegationSubject) throws MBeanException, AttributeNotFoundException, InstanceNotFoundException, ReflectionException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getAttribute(ObjectName, String).
Указано в:
getAttribute в интерфейсе RMIConnection
Параметры:
name - Имя объекта MBean, из которого должно быть извлечено атрибут.
attribute - Строка, указывающая имя извлекаемого атрибута.
delegationSubject - Subject, содержащий принципалы делегирования или null, если вместо него используется принцип аутентификации.
Возвращает:
Значение извлеченного атрибута.
Исключения:
MBeanException - Оборачивает исключение, выброшенное методом-получателем MBean.
AttributeNotFoundException - Указанный атрибут недоступен в MBean.
InstanceNotFoundException - Указанный MBean не зарегистрирован в сервере MBean.
ReflectionException - Оборачивает java.lang.Exception, выброшенное при попытке вызова метода-получателя.
IOException - если произошла общая ошибка связи.
См. также:
  • RMIConnection.setAttribute(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)

getAttributes

public AttributeList getAttributes(ObjectName name, String[] attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getAttributes(ObjectName, String[]).
Указано в:
getAttributes в интерфейсе RMIConnection
Параметры:
name - Имя объекта MBean, из которого извлекаются атрибуты.
attributes - Список извлекаемых атрибутов.
delegationSubject - Subject, содержащий принципалы делегирования или null, если вместо него используется принцип аутентификации.
Возвращает:
Список извлеченных атрибутов.
Исключения:
InstanceNotFoundException - Указанный MBean не зарегистрирован в сервере MBean.
ReflectionException - Произошла ошибка при попытке вызвать метод getAttributes динамического MBean.
IOException - если произошла общая ошибка связи.
См. также:
  • RMIConnection.setAttributes(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)

setAttribute

public void setAttribute(ObjectName name, MarshalledObject attribute, Subject delegationSubject) throws InstanceNotFoundException, AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.setAttribute(ObjectName, Attribute). Параметр Attribute обернут в MarshalledObject.
Указано в:
setAttribute в интерфейсе RMIConnection
Параметры:
name - Имя MBean, в котором должен быть установлен атрибут.
attribute - Идентификатор устанавливаемого атрибута и его значение, инкапсулированные в MarshalledObject.
delegationSubject - Subject, содержащий принципалы делегирования или null, если вместо него используется принцип аутентификации.
Исключения:
InstanceNotFoundException - Указанный MBean не зарегистрирован в сервере MBean.
AttributeNotFoundException - Указанный атрибут недоступен в MBean.
InvalidAttributeValueException - Указанное значение атрибута неверно.
MBeanException - Оборачивает исключение, выброшенное методом-установщиком MBean.
ReflectionException - Оборачивает java.lang.Exception, выброшенное при попытке вызова метода-установщика.
IOException - если произошла общая ошибка связи.
См. также:
  • RMIConnection.getAttribute(javax.management.ObjectName, java.lang.String, javax.security.auth.Subject)

setAttributes

public AttributeList setAttributes(ObjectName name, MarshalledObject attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.setAttributes(ObjectName, AttributeList). Параметр AttributeList обернут в MarshalledObject.
Указано в:
setAttributes в интерфейсе RMIConnection
Параметры:
name - Имя объекта MBean, в котором должны быть установлены атрибуты.
attributes - Список атрибутов: идентификаторы устанавливаемых атрибутов и их значения, инкапсулированные в MarshalledObject.
delegationSubject - Subject, содержащий принципалы делегирования или null, если вместо него используется принцип аутентификации.
Возвращает:
Список установленных атрибутов с их новыми значениями.
Исключения:
InstanceNotFoundException - Указанный MBean не зарегистрирован в сервере MBean.
ReflectionException - Произошла ошибка при попытке вызвать метод getAttributes динамического MBean.
IOException - если произошла общая ошибка связи.
См. также:
  • RMIConnection.getAttributes(javax.management.ObjectName, java.lang.String[], javax.security.auth.Subject)

invoke

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

getDefaultDomain

public String getDefaultDomain(Subject delegationSubject) throws IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getDefaultDomain().
Указано в:
getDefaultDomain в интерфейсе RMIConnection
Параметры:
delegationSubject - Subject, содержащий принципалы делегирования или null, если вместо него используется принцип аутентификации.
Возвращает:
домен по умолчанию.
Исключения:
IOException - если произошла общая ошибка связи.

getDomains

public String[] getDomains(Subject delegationSubject) throws IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getDomains().
Указано в:
getDomains в интерфейсе RMIConnection
Параметры:
delegationSubject - Subject, содержащий принципалы делегирования или null, если вместо него используется принцип аутентификации.
Возвращает:
список доменов.
Исключения:
IOException - если произошла общая ошибка связи.

getMBeanInfo

public MBeanInfo getMBeanInfo(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IntrospectionException, ReflectionException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getMBeanInfo(ObjectName).
Определено в:
getMBeanInfo в интерфейсе RMIConnection
Параметры:
name - Имя управляемого объекта (MBean) для анализа
delegationSubject - Subject содержащий делегированные принципы или null , если используется основной принцип аутентификации.
Возвращает:
Экземпляр MBeanInfo , позволяющий получить все атрибуты и операции данного управляемого объекта.
Выбрасывает:
InstanceNotFoundException - Управляемый объект (MBean) не найден.
IntrospectionException - Произошла ошибка во время интроспекции.
ReflectionException - Произошла ошибка при вызове getMBeanInfo для динамического управляемого объекта.
IOException - если произошла общая ошибка связи.

isInstanceOf

public boolean isInstanceOf(ObjectName name, String className, Subject delegationSubject) throws InstanceNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.isInstanceOf(ObjectName, String).
Определено в:
isInstanceOf в интерфейсе RMIConnection
Параметры:
name - Имя управляемого объекта (MBean).
className - Имя класса.
delegationSubject - Subject содержащий делегированные принципы или null если используется основной принцип аутентификации.
Возвращает:
true, если управляемый объект (MBean) является экземпляром указанного класса в соответствии с вышеуказанными правилами, false в противном случае.
Выбрасывает:
InstanceNotFoundException - Управляемый объект (MBean) не зарегистрирован в сервере управляемых объектов.
IOException - если произошла общая ошибка связи.

addNotificationListeners

public Integer[] addNotificationListeners(ObjectName[] names, MarshalledObject[] filters, Subject[] delegationSubjects) throws InstanceNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection

Обрабатывает метод MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object).

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

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

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

Определено в:
addNotificationListeners в интерфейсе RMIConnection
Параметры:
names - имена управляемых объектов (MBean), генерирующих уведомления.
filters - массив сериализованных представлений NotificationFilters. Элементы этого массива могут быть null.
delegationSubjects - Subjects от имени которого добавляются слушатели. Элементы этого массива могут быть null. Также, сам параметр delegationSubjects может быть null, что эквивалентно массиву null-значений с таким же размером, как и массивы names и filters.
Возвращает:
массив listenerIDs , идентифицирующих локальных слушателей. Этот массив имеет такое же количество элементов, как и параметры.
Выбрасывает:
InstanceNotFoundException - если один из names не соответствует ни одному зарегистрированному управляемому объекту.
IOException - если произошла общая ошибка связи.

addNotificationListener

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

removeNotificationListeners

public void removeNotificationListeners(ObjectName name, Integer[] listenerIDs, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection

Обрабатывает методы removeNotificationListener(ObjectName, NotificationListener) и removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object).

Этот метод удаляет одного или нескольких слушателей уведомлений от заданного управляемого объекта (MBean) на сервере управляемых объектов.

Слушатели идентифицируются по идентификаторам, возвращенным методом RMIConnection.addNotificationListeners(ObjectName[], MarshalledObject[], Subject[]).

Определено в:
removeNotificationListeners в интерфейсе RMIConnection
Параметры:
name - имя управляемого объекта (MBean), генерирующего уведомления.
listenerIDs - список идентификаторов соответствующих слушателей для удаления.
delegationSubject - Subject содержащий делегированные принципы или null если используется основной принцип аутентификации.
Выбрасывает:
InstanceNotFoundException - если заданное name не соответствует ни одному зарегистрированному управляемому объекту.
ListenerNotFoundException - если один из слушателей не найден на стороне сервера. Эта ошибка может произойти, если управляемый объект удалил слушателя по причине, отличной от вызова MBeanServer.removeNotificationListener.
IOException - если произошла общая ошибка связи.

removeNotificationListener

public void removeNotificationListener(ObjectName name, ObjectName listener, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName).
Определено в:
removeNotificationListener в интерфейсе RMIConnection
Параметры:
name - Имя управляемого объекта (MBean), с которого должен быть удален слушатель.
listener - Имя объекта слушателя, подлежащего удалению.
delegationSubject - Subject содержащий делегированные принципы или null если используется основной принцип аутентификации.
Выбрасывает:
InstanceNotFoundException - Указанное имя управляемого объекта (MBean) не соответствует ни одному из зарегистрированных управляемых объектов.
ListenerNotFoundException - Слушатель не зарегистрирован в управляемом объекте.
IOException - если произошла общая ошибка связи.
См. также:
  • RMIConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)
END_OF_DOCUMENT_MARKER

removeNotificationListener

public void removeNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object). Параметр NotificationFilter упакован в MarshalledObject. Параметр Object также упакован в MarshalledObject.
Указано в:
removeNotificationListener в интерфейсе RMIConnection
Параметры:
name - Имя MBean, из которого необходимо удалить слушатель.
listener - Слушатель, ранее добавленный для этого MBean.
filter - Фильтр, заданный при добавлении слушателя, инкапсулированный в MarshalledObject.
handback - Обработка, заданная при добавлении слушателя, инкапсулированная в MarshalledObject.
delegationSubject - Subject содержащий принципы делегирования или null, если используется основной принцип аутентификации.
Исключения:
InstanceNotFoundException - Имя MBean не совпадает ни с одним из зарегистрированных MBean.
ListenerNotFoundException - Слушатель не зарегистрирован в MBean или не зарегистрирован с заданным фильтром и обработкой.
IOException - если произошла общая ошибка связи.
См. также:
  • RMIConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)

fetchNotifications

public NotificationResult fetchNotifications(long clientSequenceNumber, int maxNotifications, long timeout) throws IOException
Описание скопировано из интерфейса: RMIConnection

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

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

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

toString

public String toString()

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

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

© 1993, 2021, 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/17/docs/api/java.management.rmi/javax/management/remote/rmi/RMIConnectionImpl.html

Spec-Zone.ru

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