Класс 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) Создаёт новый |
Методы
Методы, унаследованные от класса 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 или IIOP. Этот объект не экспортирует себя: обязанность вызывающего объекта — экспортировать его соответствующим образом (см. RMIJRMPServerImpl.makeClient(String,Subject) и RMIIIOPServerImpl.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в интерфейсеCloseable - Указано в:
-
closeв интерфейсеAutoCloseable - Указано в:
-
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.
- Указано:
-
createMBeanв интерфейсеRMIConnection - Параметры:
-
className- Имя класса MBean, который должен быть проинициализирован. -
name- Имя объекта MBean. Может быть null. -
loaderName- Имя объекта загрузчика классов, который должен быть использован. -
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. -
InstanceNotFoundException- Указанный загрузчик классов не зарегистрирован на сервере MBean. -
IOException- Если произошла общая ошибка связи.
unregisterMBean
public void unregisterMBean(ObjectName name,
Subject delegationSubject)
throws InstanceNotFoundException,
MBeanRegistrationException,
IOException Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.unregisterMBean(ObjectName).
- Указано:
-
unregisterMBeanв интерфейсеRMIConnection - Параметры:
-
name- Имя объекта MBean, который должен быть удалён из регистрации. -
delegationSubject-Subjectсодержащий принципы делегирования, илиnull, если используется основной принцип аутентификации. - Выбрасывает:
-
InstanceNotFoundException- Указанный MBean не зарегистрирован на сервере MBean. -
MBeanRegistrationException- Метод preDeregister (интерфейсMBeanRegistrationMBean выбросил исключение. -
IOException- Если произошла общая ошибка связи.
getObjectInstance
public ObjectInstance getObjectInstance(ObjectName name,
Subject delegationSubject)
throws InstanceNotFoundException,
IOException Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getObjectInstance(ObjectName).
- Указано:
-
getObjectInstanceв интерфейсеRMIConnection - Параметры:
-
name- Имя объекта MBean. -
delegationSubject-Subjectсодержащий принципы делегирования, илиnull, если используется основной принцип аутентификации. - Возвращает:
- Объект
ObjectInstanceсвязанный с MBean, указанным name. СодержащийсяObjectNameимеет значениеname, а содержащееся имя класса —.getMBeanInfo(name).getClassName() - Выбрасывает:
-
InstanceNotFoundException- Указанный MBean не зарегистрирован на сервере MBean. -
IOException- Если произошла общая ошибка связи.
queryMBeans
public Set<ObjectInstance> queryMBeans(ObjectName name,
MarshalledObject query,
Subject delegationSubject)
throws IOException Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.queryMBeans(ObjectName,
QueryExp). QueryExp упакован в MarshalledObject.
- Указано:
-
queryMBeansв интерфейсеRMIConnection - Параметры:
-
name- Шаблон имени объекта, определяющий MBean, которые необходимо получить. Если null или не указаны свойства домена и ключа, будут получены все зарегистрированные MBean. -
query- Выражение запроса, которое должно быть применено для выбора MBeans, упакованное вMarshalledObject. ЕслиMarshalledObjectсодержит null, выражение запроса для выбора MBean не будет применено. -
delegationSubject-Subjectсодержащий принципы делегирования, илиnull, если используется основной принцип аутентификации. - Возвращает:
- Множество, содержащее объекты
ObjectInstanceдля выбранных MBean. Если ни один MBean не удовлетворяет запросу, возвращается пустой список. - Выбрасывает:
-
IOException- Если произошла общая ошибка связи.
queryNames
public Set<ObjectName> queryNames(ObjectName name,
MarshalledObject query,
Subject delegationSubject)
throws IOException Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.queryNames(ObjectName,
QueryExp). QueryExp упакован в MarshalledObject.
- Указано:
-
queryNamesв интерфейсеRMIConnection - Параметры:
-
name- Шаблон имени объекта, определяющий имена MBean, которые необходимо получить. Если null или не указаны свойства домена и ключа, будут возвращены имена всех зарегистрированных MBeans. -
query- Выражение запроса, которое должно быть применено для выбора MBeans, упакованное вMarshalledObject. ЕслиMarshalledObjectсодержит null, выражение запроса для выбора MBean не будет применено. -
delegationSubject-Subjectсодержащий принципы делегирования, илиnull, если используется основной принцип аутентификации. - Возвращает:
- Множество, содержащее ObjectNames для выбранных MBeans. Если ни один MBean не удовлетворяет запросу, возвращается пустой список.
- Выбрасывает:
-
IOException- Если произошла общая ошибка связи.
isRegistered
public boolean isRegistered(ObjectName name,
Subject delegationSubject)
throws IOException Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.isRegistered(ObjectName).
- Указано:
-
isRegisteredв интерфейсеRMIConnection - Параметры:
-
name- Имя объекта MBean, который необходимо проверить. -
delegationSubject-Subjectсодержащий принципы делегирования, илиnull, если используется основной принцип аутентификации. - Возвращает:
- True, если MBean уже зарегистрирован на сервере MBean, иначе false.
- Выбрасывает:
-
IOException- Если произошла общая ошибка связи.
getMBeanCount
public Integer getMBeanCount(Subject delegationSubject)
throws IOException Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.getMBeanCount().
- Указано:
-
getMBeanCountв интерфейсеRMIConnection - Параметры:
-
delegationSubject-Subjectсодержащий принципы делегирования, илиnull, если используется основной принцип аутентификации. - Возвращает:
- количество зарегистрированных MBeans.
- Выбрасывает:
-
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, позволяющий получить все атрибуты и операции этого MBean. - Выбрасывает:
-
InstanceNotFoundException- Указанный MBean не найден. -
IntrospectionException- Произошла ошибка во время интроспекции. -
ReflectionException- Произошла ошибка при попытке вызвать getMBeanInfo динамического MBean. -
IOException- если произошла общая ошибка связи.
isInstanceOf
public boolean isInstanceOf(ObjectName name,
String className,
Subject delegationSubject)
throws InstanceNotFoundException,
IOException Описание скопировано из интерфейса: RMIConnection
Обрабатывает метод MBeanServerConnection.isInstanceOf(ObjectName,
String).
- Указано в:
-
isInstanceOfв интерфейсеRMIConnection - Параметры:
-
name-ObjectNameMBean. -
className- Имя класса. -
delegationSubject-Subjectсодержащий принципалы делегирования илиnull, если вместо этого используется принципал аутентификации. - Возвращает:
- true, если указанный MBean является экземпляром указанного класса в соответствии с приведенными выше правилами, иначе false.
- Выбрасывает:
-
InstanceNotFoundException- Указанный MBean не зарегистрирован в сервере 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- имяObjectNames, идентифицирующее MBean, испускающий уведомления. -
filters- массив сериализованных представленийNotificationFilters. Элементы этого массива могут быть null. -
delegationSubjects-Subjectsот имени которого добавляются слушатели. Элементы этого массива могут быть null. Также параметрdelegationSubjectsсам может быть null, что эквивалентно массиву null-значений с таким же размером, как у массивовnamesиfilters. - Возвращает:
- массив
listenerIDs, идентифицирующих локальных слушателей. Этот массив имеет такое же количество элементов, как и параметры. - Выбрасывает:
-
InstanceNotFoundException- если один изnamesне соответствует ни одному зарегистрированному MBean. -
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- Имя объекта слушателя, который будет обрабатывать уведомления, испускаемые зарегистрированным MBean. -
filter- Объект фильтра, упакованный вMarshalledObject. Если фильтр, упакованный вMarshalledObject, имеет значение null, фильтрация не будет выполняться перед обработкой уведомлений. -
handback- Контекст, который будет отправлен слушателю при испускании уведомления, упакованный вMarshalledObject. -
delegationSubject-Subject, содержащий принципы делегирования илиnull, если используется принцип аутентификации. - Выбрасывает:
-
InstanceNotFoundException- Имя MBean слушателя уведомлений или отправителя уведомлений не совпадает ни с одним из зарегистрированных MBeans. -
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).
Этот метод удаляет одного или нескольких NotificationListener от заданного MBean в сервере MBean.
NotificationListeners идентифицируются по идентификаторам, возвращенным методом RMIConnection.addNotificationListeners(ObjectName[], MarshalledObject[],
Subject[]).
- Указано:
-
removeNotificationListenersв интерфейсеRMIConnection - Параметры:
-
name- имяObjectName, идентифицирующее MBean, испускающий уведомления. -
listenerIDs- список идентификаторов, соответствующих слушателям, которые нужно удалить. -
delegationSubject-Subject, содержащий принципы делегирования илиnull, если используется принцип аутентификации. - Выбрасывает:
-
InstanceNotFoundException- если заданноеnameне соответствует ни одному зарегистрированному MBean. -
ListenerNotFoundException- если один из слушателей не был найден на стороне сервера. Эта ошибка может произойти, если MBean удалил слушателя по какой-либо причине, отличной от вызова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 не соответствует ни одному из зарегистрированных MBeans. -
ListenerNotFoundException- Слушатель не зарегистрирован в MBean. -
IOException- если произошла общая ошибка связи. - См. также:
RMIConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)
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- Handback, который был указан при добавлении слушателя, упакованный вMarshalledObject. -
delegationSubject-Subject, содержащий принципы делегирования илиnull, если используется принцип аутентификации. - Выбрасывает:
-
InstanceNotFoundException- Предоставленное имя MBean не соответствует ни одному из зарегистрированных MBeans. -
ListenerNotFoundException- Слушатель не зарегистрирован в MBean или не зарегистрирован с заданным фильтром и handback. -
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, чтобы указать, что нет таймаута. Поведение не определено, если этот параметр отрицательный. - Возвращает:
- A
NotificationResult. - Выбрасывает:
-
IOException- если произошла общая ошибка связи.
toString
public String toString()
Возвращает строковое представление этого объекта. В общем случае метод toString возвращает строку, которая "текстово представляет" этот объект. Результат должен быть кратким, но информативным представлением, удобным для чтения человеком.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.