Интерфейс ModelMBeanNotificationBroadcaster
- Все суперинтерфейсы:
NotificationBroadcaster
- Все известные подинтерфейсы:
ModelMBean
- Все известные реализующие классы:
RequiredModelMBean
public interface ModelMBeanNotificationBroadcaster extends NotificationBroadcaster
Java-ресурсы, желающие быть управляемыми, создают экземпляр ModelMBean, используя метод createMBean сервера MBeanServer. Затем ресурс задает ModelMBeanInfo (с дескрипторами) для экземпляра ModelMBean. Атрибуты и операции, экспонированные через ModelMBeanInfo для ModelMBean, доступны из MBeans, соединителей/адаптеров, как и других MBeans. С помощью дескрипторов ModelMBeanInfo можно определять и сопоставлять значения и методы в управляемом приложении с атрибутами и операциями ModelMBean. Это сопоставление можно определить во время разработки в файле формата XML или динамически и программно во время выполнения.
Каждый ModelMBean, созданный в MBeanServer, становится управляемым: его атрибуты и операции становятся удаленно доступными через соединители/адаптеры, подключенные к этому MBeanServer. Объект Java не может быть зарегистрирован в MBeanServer, если он не является совместимым с JMX MBean. Создав экземпляр ModelMBean, ресурсы гарантируют, что MBean является допустимым.
MBeanException и RuntimeOperationsException должны быть выброшены для каждого публичного метода. Это позволяет оборачивать исключения из распределенных коммуникаций (RMI, EJB и т. д.). Эти исключения не обязательно нужно выбрасывать в реализации, за исключением случаев, описанных в спецификации и javadoc.
- С момента:
- 1.5
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addAttributeChangeNotificationListener |
Регистрирует объект, реализующий интерфейс NotificationListener, как слушатель. |
void |
removeAttributeChangeNotificationListener |
Удаляет слушателя уведомлений об изменении атрибутов из RequiredModelMBean. |
void |
sendAttributeChangeNotification |
Отправляет уведомление об изменении атрибута, переданное зарегистрированным слушателям уведомлений об изменении атрибутов в ModelMBean. |
void |
sendAttributeChangeNotification |
Отправляет уведомление об изменении атрибута, содержащее старое и новое значения атрибута, зарегистрированным слушателям уведомлений об изменении атрибутов в ModelMBean. |
void |
sendNotification |
Отправляет уведомление, содержащее текстовую строку, переданную зарегистрированным слушателям уведомлений в ModelMBean. |
void |
sendNotification |
Отправляет уведомление, переданное зарегистрированным слушателям уведомлений в ModelMBean, как уведомление jmx.modelmbean.generic. |
Методы, объявленные в интерфейсе javax.management.NotificationBroadcaster
addNotificationListener, getNotificationInfo, removeNotificationListener
Подробное описание методов
sendNotification
void sendNotification(Notification ntfyObj) throws MBeanException, RuntimeOperationsException
- Параметры:
-
ntfyObj- Уведомление, которое должно быть передано методу 'handleNotification' объекта-слушателя. - Исключения:
-
MBeanException- Оборачивает исключение распределенных коммуникаций. -
RuntimeOperationsException- Оборачивает IllegalArgumentException: Объект уведомления, переданный в параметре, равен null.
sendNotification
void sendNotification(String ntfyText) throws MBeanException, RuntimeOperationsException
- Параметры:
-
ntfyText- Текст, который должен быть передан в уведомление методу 'handleNotification' объекта-слушателя. Сформированное уведомление будет: тип "jmx.modelmbean.generic", источник экземпляра ModelMBean, последовательность 1 - Исключения:
-
MBeanException- Оборачивает исключение распределенных коммуникаций. -
RuntimeOperationsException- Оборачивает IllegalArgumentException: Переданная текстовая строка уведомления равна null.
sendAttributeChangeNotification
void sendAttributeChangeNotification(AttributeChangeNotification notification) throws MBeanException, RuntimeOperationsException
- Параметры:
-
notification- Уведомление, которое должно быть передано методу 'handleNotification' объекта-слушателя. - Исключения:
-
MBeanException- Оборачивает исключение распределенных коммуникаций. -
RuntimeOperationsException- Оборачивает IllegalArgumentException: Объект AttributeChangeNotification, переданный в параметре, равен null.
sendAttributeChangeNotification
void sendAttributeChangeNotification(Attribute oldValue, Attribute newValue) throws MBeanException, RuntimeOperationsException
- Параметры:
-
oldValue- Исходное значение атрибута -
newValue- Текущее значение атрибутаThe constructed attributeChangeNotification will be: type "jmx.attribute.change" source this ModelMBean instance sequence 1 attributeName oldValue.getName() attributeType oldValue's class attributeOldValue oldValue.getValue() attributeNewValue newValue.getValue()
- Исключения:
-
MBeanException- Оборачивает исключение распределенных коммуникаций. -
RuntimeOperationsException- Оборачивает IllegalArgumentException: Объект Attribute, переданный в параметре, равен null или имена двух объектов Attribute в параметре не совпадают.
addAttributeChangeNotificationListener
void addAttributeChangeNotificationListener(NotificationListener listener, String attributeName, Object handback) throws MBeanException, RuntimeOperationsException, IllegalArgumentException
- Параметры:
-
listener- Объект-слушатель, который будет обрабатывать уведомления, исходящие от зарегистрированного MBean. -
attributeName- Имя атрибута ModelMBean, для которого нужно получать уведомления об изменениях. Если null, то все изменения атрибутов будут вызывать отправку attributeChangeNotification. -
handback- Контекст, который будет передан слушателю вместе с уведомлением при отправке уведомления. - Исключения:
-
IllegalArgumentException- Слушатель не может быть null. -
MBeanException- Оборачивает исключение распределенных коммуникаций. -
RuntimeOperationsException- Оборачивает IllegalArgumentException: Имя атрибута, переданное в параметре, не существует. - См. также:
removeAttributeChangeNotificationListener
void removeAttributeChangeNotificationListener(NotificationListener listener, String attributeName) throws MBeanException, RuntimeOperationsException, ListenerNotFoundException
- Параметры:
-
listener- Имя слушателя, который обрабатывал уведомления, исходящие от зарегистрированного MBean. Этот метод удалит всю информацию, связанную с этим слушателем. -
attributeName- Атрибут, для которого слушатель больше не хочет получать уведомления об изменениях атрибутов. Если null, то слушатель будет удален для всех уведомлений об изменениях атрибутов. - Исключения:
-
ListenerNotFoundException- Слушатель не зарегистрирован в MBean или равен null. -
MBeanException- Оборачивает исключение распределенных коммуникаций. -
RuntimeOperationsException- Оборачивает IllegalArgumentException, если параметр inAttributeName не соответствует имени атрибута. - См. также:
© 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/javax/management/modelmbean/ModelMBeanNotificationBroadcaster.html