Класс RMIConnectionImpl
- Все реализованные интерфейсы:
-
Closeable,AutoCloseable,Remote,Unreferenced,RMIConnection
public class RMIConnectionImpl extends Object implements RMIConnection, Unreferenced
Реализация интерфейса RMIConnection. Пользовательский код обычно не ссылается на этот класс.
- С момента:
- 1.5
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
RMIConnectionImpl |
Создаёт новый RMIConnection. |
Краткое описание методов
Подробное описание конструкторов
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- если произошла общая ошибка связи. - См. также:
close
public void close() throws IOException
RMIConnectionЗакрывает это соединение. После возвращения из этого метода RMI-объект, реализующий этот интерфейс, не экспортируется, поэтому дальнейшие удалённые вызовы к нему завершатся ошибкой.
- Определено в:
-
closeв интерфейсеAutoCloseable - Определено в:
-
closeв интерфейсеCloseable - Определено в:
-
closeв интерфейсеRMIConnection - Исключения:
-
IOException- если соединение не удалось закрыть, или удалённый объект не удалось разэкспортировать, или произошла ошибка связи при передаче удалённого запроса закрытия.
unreferenced
public void unreferenced()
Unreferenced- Определено в:
-
unreferencedв интерфейсеUnreferenced
createMBean
public ObjectInstance createMBean(String className, ObjectName name, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.getAttribute(ObjectName, String).- Указано в:
-
getAttributeв интерфейсеRMIConnection - Параметры:
-
name- Имя объекта MBean, из которого должно быть извлечено атрибут. -
attribute- Строка, указывающая имя извлекаемого атрибута. -
delegationSubject-Subject, содержащий принципалы делегирования илиnull, если вместо него используется принцип аутентификации. - Возвращает:
- Значение извлеченного атрибута.
- Исключения:
-
MBeanException- Оборачивает исключение, выброшенное методом-получателем MBean. -
AttributeNotFoundException- Указанный атрибут недоступен в MBean. -
InstanceNotFoundException- Указанный MBean не зарегистрирован в сервере MBean. -
ReflectionException- Оборачиваетjava.lang.Exception, выброшенное при попытке вызова метода-получателя. -
IOException- если произошла общая ошибка связи. - См. также:
getAttributes
public AttributeList getAttributes(ObjectName name, String[] attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
RMIConnectionMBeanServerConnection.getAttributes(ObjectName, String[]).- Указано в:
-
getAttributesв интерфейсеRMIConnection - Параметры:
-
name- Имя объекта MBean, из которого извлекаются атрибуты. -
attributes- Список извлекаемых атрибутов. -
delegationSubject-Subject, содержащий принципалы делегирования илиnull, если вместо него используется принцип аутентификации. - Возвращает:
- Список извлеченных атрибутов.
- Исключения:
-
InstanceNotFoundException- Указанный MBean не зарегистрирован в сервере MBean. -
ReflectionException- Произошла ошибка при попытке вызвать метод getAttributes динамического MBean. -
IOException- если произошла общая ошибка связи. - См. также:
setAttribute
public void setAttribute(ObjectName name, MarshalledObject attribute, Subject delegationSubject) throws InstanceNotFoundException, AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException, IOException
RMIConnectionMBeanServerConnection.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- если произошла общая ошибка связи. - См. также:
setAttributes
public AttributeList setAttributes(ObjectName name, MarshalledObject attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
RMIConnectionMBeanServerConnection.setAttributes(ObjectName, AttributeList). Параметр AttributeList обернут в MarshalledObject.- Указано в:
-
setAttributesв интерфейсеRMIConnection - Параметры:
-
name- Имя объекта MBean, в котором должны быть установлены атрибуты. -
attributes- Список атрибутов: идентификаторы устанавливаемых атрибутов и их значения, инкапсулированные вMarshalledObject. -
delegationSubject-Subject, содержащий принципалы делегирования илиnull, если вместо него используется принцип аутентификации. - Возвращает:
- Список установленных атрибутов с их новыми значениями.
- Исключения:
-
InstanceNotFoundException- Указанный MBean не зарегистрирован в сервере MBean. -
ReflectionException- Произошла ошибка при попытке вызвать метод getAttributes динамического MBean. -
IOException- если произошла общая ошибка связи. - См. также:
invoke
public Object invoke(ObjectName name, String operationName, MarshalledObject params, String[] signature, Subject delegationSubject) throws InstanceNotFoundException, MBeanException, ReflectionException, IOException
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.getDefaultDomain().- Указано в:
-
getDefaultDomainв интерфейсеRMIConnection - Параметры:
-
delegationSubject-Subject, содержащий принципалы делегирования илиnull, если вместо него используется принцип аутентификации. - Возвращает:
- домен по умолчанию.
- Исключения:
-
IOException- если произошла общая ошибка связи.
getDomains
public String[] getDomains(Subject delegationSubject) throws IOException
RMIConnectionMBeanServerConnection.getDomains().- Указано в:
-
getDomainsв интерфейсеRMIConnection - Параметры:
-
delegationSubject-Subject, содержащий принципалы делегирования илиnull, если вместо него используется принцип аутентификации. - Возвращает:
- список доменов.
- Исключения:
-
IOException- если произошла общая ошибка связи.
getMBeanInfo
public MBeanInfo getMBeanInfo(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IntrospectionException, ReflectionException, IOException
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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
RMIConnectionMBeanServerConnection.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- если произошла общая ошибка связи. - См. также:
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
RMIConnectionMBeanServerConnection.removeNotificationListener(ObjectName, ObjectName).- Определено в:
-
removeNotificationListenerв интерфейсеRMIConnection - Параметры:
-
name- Имя управляемого объекта (MBean), с которого должен быть удален слушатель. -
listener- Имя объекта слушателя, подлежащего удалению. -
delegationSubject-Subjectсодержащий делегированные принципы илиnullесли используется основной принцип аутентификации. - Выбрасывает:
-
InstanceNotFoundException- Указанное имя управляемого объекта (MBean) не соответствует ни одному из зарегистрированных управляемых объектов. -
ListenerNotFoundException- Слушатель не зарегистрирован в управляемом объекте. -
IOException- если произошла общая ошибка связи. - См. также:
removeNotificationListener
public void removeNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
RMIConnectionMBeanServerConnection.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- если произошла общая ошибка связи. - См. также:
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