Интерфейс ModelMBeanNotificationBroadcaster
- Все суперинтерфейсы:
NotificationBroadcaster
- Все известные подинтерфейсы:
ModelMBean
- Все известные реализующие классы:
RequiredModelMBean
public interface ModelMBeanNotificationBroadcaster extends NotificationBroadcaster
Java-ресурсы, желающие быть управляемыми, создают экземпляр ModelMBean с помощью метода createMBean сервера MBeanServer. Затем ресурс устанавливает ModelMBeanInfo (с описателями) для экземпляра ModelMBean. Атрибуты и операции, экспонируемые через ModelMBeanInfo для ModelMBean, доступны из MBean, коннекторов/адаптеров, как и другие MBean. Через описатели 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: Объект атрибута, переданный в качестве параметра, равен null или имена двух объектов атрибутов в параметре не совпадают.
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, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.management/javax/management/modelmbean/ModelMBeanNotificationBroadcaster.html