Spec-Zone.ru › OpenJDK 27

Интерфейс ModelMBeanNotificationBroadcaster

Все суперинтерфейсы:
NotificationBroadcaster
Все известные подинтерфейсы:
ModelMBean
Все известные реализующие классы:
RequiredModelMBean
public interface ModelMBeanNotificationBroadcaster extends NotificationBroadcaster
Этот интерфейс должен быть реализован ModelMBean. Реализация этого интерфейса должна поставляться с каждым JMX-агентом.

Ресурсы 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 listener, String attributeName, Object handback)
Регистрирует объект, реализующий интерфейс NotificationListener, в качестве слушателя.
void removeAttributeChangeNotificationListener(NotificationListener listener, String attributeName)
Удаляет слушателя уведомлений об изменении атрибутов из RequiredModelMBean.
void sendAttributeChangeNotification(AttributeChangeNotification notification)
Отправляет переданное уведомление об изменении атрибута зарегистрированным слушателям таких уведомлений в ModelMBean.
void sendAttributeChangeNotification(Attribute oldValue, Attribute newValue)
Отправляет зарегистрированным слушателям AttributeChangeNotification в ModelMBean уведомление об изменении атрибута, содержащее старое и новое значения атрибута.
void sendNotification(String ntfyText)
Отправляет зарегистрированным слушателям Notification в ModelMBean уведомление, содержащее переданную текстовую строку.
void sendNotification(Notification ntfyObj)
Отправляет переданное уведомление зарегистрированным слушателям Notification в ModelMBean как общее уведомление jmx.modelmbean.generic.

Методы, объявленные в интерфейсе NotificationBroadcaster

addNotificationListener, getNotificationInfo, removeNotificationListener
Модификатор и тип Метод Описание
void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Добавляет слушателя к этому MBean.
MBeanNotificationInfo[] getNotificationInfo()
Возвращает массив, в котором для каждого уведомления, которое может отправлять этот MBean, указаны имя класса Java уведомления и тип уведомления.
void removeNotificationListener(NotificationListener listener)
Удаляет слушателя из этого MBean.

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

sendNotification

void sendNotification(Notification ntfyObj) throws MBeanException, RuntimeOperationsException
Отправляет переданное уведомление зарегистрированным слушателям Notification в ModelMBean как общее уведомление jmx.modelmbean.generic.
Параметры:
ntfyObj — уведомление, передаваемое методу 'handleNotification' объекта-слушателя.
Выбрасывает:
MBeanException — оборачивает исключение, возникшее при распределённом взаимодействии.
RuntimeOperationsException — оборачивает IllegalArgumentException: объект Notification, переданный в параметре, равен null.

sendNotification

void sendNotification(String ntfyText) throws MBeanException, RuntimeOperationsException
Отправляет зарегистрированным слушателям Notification в ModelMBean уведомление, содержащее переданную текстовую строку.
Параметры:
ntfyText — текст, передаваемый в Notification методу 'handleNotification' объекта-слушателя. Созданное уведомление будет иметь тип "jmx.modelmbean.generic", источником будет этот экземпляр ModelMBean, а порядковый номер будет равен 1.
Выбрасывает:
MBeanException — оборачивает исключение, возникшее при распределённом взаимодействии.
RuntimeOperationsException — оборачивает IllegalArgumentException: текстовая строка Notification, переданная в параметре, равна null.

sendAttributeChangeNotification

void sendAttributeChangeNotification(AttributeChangeNotification notification) throws MBeanException, RuntimeOperationsException
Отправляет переданное уведомление об изменении атрибута зарегистрированным слушателям таких уведомлений в ModelMBean.
Параметры:
notification — уведомление, передаваемое методу 'handleNotification' объекта-слушателя.
Выбрасывает:
MBeanException — оборачивает исключение, возникшее при распределённом взаимодействии.
RuntimeOperationsException — оборачивает IllegalArgumentException: объект AttributeChangeNotification, переданный в параметре, равен null.

sendAttributeChangeNotification

void sendAttributeChangeNotification(Attribute oldValue, Attribute newValue) throws MBeanException, RuntimeOperationsException
Отправляет зарегистрированным слушателям AttributeChangeNotification в ModelMBean уведомление об изменении атрибута, содержащее старое и новое значения атрибута.
Параметры:
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
Регистрирует объект, реализующий интерфейс NotificationListener, в качестве слушателя. Метод 'handleNotification()' этого объекта будет вызываться при отправке уведомления об изменении атрибута через ModelMBean или самим ModelMBean. Это не относится к другим уведомлениям. Для них необходимо регистрировать слушателей отдельно. Для указанного attributeName будет создано уведомление AttributeChangeNotification.
Параметры:
listener — объект-слушатель, который будет обрабатывать уведомления, отправляемые зарегистрированным MBean.
attributeName — имя атрибута ModelMBean, изменения которого требуется отслеживать. Если значение равно null, любое изменение атрибута приведёт к отправке уведомления attributeChangeNotification.
handback — контекст, который будет передан слушателю вместе с уведомлением при его отправке.
Выбрасывает:
IllegalArgumentException — слушатель не может быть равен null.
MBeanException — оборачивает исключение, возникшее при распределённом взаимодействии.
RuntimeOperationsException — оборачивает IllegalArgumentException: имя атрибута, переданное в параметре, не существует.
См. также:
  • removeAttributeChangeNotificationListener(NotificationListener, String)

removeAttributeChangeNotificationListener

void removeAttributeChangeNotificationListener(NotificationListener listener, String attributeName) throws MBeanException, RuntimeOperationsException, ListenerNotFoundException
Удаляет слушателя уведомлений об изменении атрибутов из RequiredModelMBean.
Параметры:
listener — имя слушателя, обрабатывавшего уведомления, отправляемые зарегистрированным MBean. Этот метод удалит все сведения, связанные с данным слушателем.
attributeName — атрибут, изменения которого слушатель больше не хочет отслеживать. Если значение равно null, слушатель будет удалён для всех уведомлений attributeChangeNotification.
Выбрасывает:
ListenerNotFoundException — слушатель не зарегистрирован в MBean или равен null.
MBeanException — оборачивает исключение, возникшее при распределённом взаимодействии.
RuntimeOperationsException — оборачивает IllegalArgumentException: параметр inAttributeName не соответствует имени атрибута.
См. также:
  • addAttributeChangeNotificationListener(NotificationListener, String, Object)

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её дочерних компаний в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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