Spec-Zone.ru › OpenJDK 8

Класс MBeanServerNotification

  • java.lang.Object
    • java.util.EventObject
      • javax.management.Notification
        • javax.management.MBeanServerNotification
Все реализованные интерфейсы:
Serializable

public class MBeanServerNotification
extends Notification

Представляет уведомление, испускаемое сервером MBean через MBean MBeanServerDelegate. Сервер MBean испускает следующие типы уведомлений: регистрация MBean, отмена регистрации MBean.

Чтобы получать уведомления MBeanServerNotification, необходимо зарегистрировать слушателя в MBeanServerDelegate MBean, который представляет сервер MBean. Имя объекта MBeanServerDelegate — MBeanServerDelegate.DELEGATE_NAME, которое является JMImplementation:type=MBeanServerDelegate.

Следующий код выводит сообщение каждый раз, когда MBean регистрируется или отменяется регистрацию на сервере MBean mbeanServer:

private static final NotificationListener printListener = new NotificationListener() {
     public void handleNotification(Notification n, Object handback) {
         if (!(n instanceof MBeanServerNotification)) {
             System.out.println("Ignored notification of class " + n.getClass().getName());
             return;
         }
         MBeanServerNotification mbsn = (MBeanServerNotification) n;
         String what;
         if (n.getType().equals(MBeanServerNotification.REGISTRATION_NOTIFICATION))
             what = "MBean registered";
         else if (n.getType().equals(MBeanServerNotification.UNREGISTRATION_NOTIFICATION))
             what = "MBean unregistered";
         else
             what = "Unknown type " + n.getType();
         System.out.println("Received MBean Server notification: " + what + ": " +
                 mbsn.getMBeanName());
     }
 };

 ...
     mbeanServer.addNotificationListener(
             MBeanServerDelegate.DELEGATE_NAME, printListener, null, null);

MBean, который не является MBeanServerDelegate, также может испускать MBeanServerNotifications. В частности, существует соглашение для MBean испускать MBeanServerNotification для группы MBean.

MBeanServerNotification, испускаемый для обозначения регистрации или отмены регистрации группы MBean, имеет следующие характеристики:

  • Его тип уведомления составляет "JMX.mbean.registered.group" или "JMX.mbean.unregistered.group", которые также можно записать REGISTRATION_NOTIFICATION+ ".group" или UNREGISTRATION_NOTIFICATION+ ".group".
  • Его имя MBean представляет собой шаблон имени объекта, который выбирает набор (или надмножество) MBean, которые регистрируются или отменяются регистрацию.
  • Его пользовательские данные могут быть необязательно установлены в массив ObjectNames, содержащих имена всех MBean, которые регистрируются или отменяются регистрацию.

MBean, которые испускают эти уведомления о регистрации/отмене регистрации группы, объявят их в своём MBeanNotificationInfo.

С тех пор:
1.5
См. также:
Сериализованная форма

Поля

Модификатор и тип Поле и описание
static String REGISTRATION_NOTIFICATION

Тип уведомления, обозначающий, что MBean был зарегистрирован.

static String UNREGISTRATION_NOTIFICATION

Тип уведомления, обозначающий, что MBean был отменён регистрацию.

Поля, унаследованные от класса javax.management.Notification

source

Краткое описание конструкторов

Конструктор и описание
MBeanServerNotification(String type, Object source, long sequenceNumber, ObjectName objectName)

Создаёт объект MBeanServerNotification, определяя имена объектов MBean, вызвавшие уведомление, и указанный тип уведомления.

Краткое описание методов

Модификатор и тип Метод и описание
ObjectName getMBeanName()

Возвращает имя объекта MBean, вызвавшего уведомление.

String toString()

Возвращает строковое представление этого уведомления.

Методы, унаследованные от класса javax.management.Notification

getMessage, getSequenceNumber, getTimeStamp, getType, getUserData, setSequenceNumber, setSource, setTimeStamp, setUserData

Методы, унаследованные от класса java.util.EventObject

getSource

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание полей

REGISTRATION_NOTIFICATION

public static final String REGISTRATION_NOTIFICATION

Тип уведомления, обозначающий, что MBean был зарегистрирован. Значение — "JMX.mbean.registered".

См. также:
Постоянные значения полей

UNREGISTRATION_NOTIFICATION

public static final String UNREGISTRATION_NOTIFICATION

Тип уведомления, обозначающий, что MBean был отменён регистрацию. Значение — "JMX.mbean.unregistered".

См. также:
Постоянные значения полей

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

MBeanServerNotification

public MBeanServerNotification(String type,
                               Object source,
                               long sequenceNumber,
                               ObjectName objectName)

Создаёт объект MBeanServerNotification, определяя имена объектов MBean, вызвавшие уведомление, и указанный тип уведомления.

Параметры:
type - Строка, обозначающая тип уведомления. Установите одно из этих значений: REGISTRATION_NOTIFICATION, UNREGISTRATION_NOTIFICATION.
source - Объект MBeanServerNotification, ответственный за пересылку уведомлений сервера MBean.
sequenceNumber - Номер последовательности, который может использоваться для упорядочивания полученных уведомлений.
objectName - Имя объекта MBean, вызвавшего уведомление.

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

getMBeanName

public ObjectName getMBeanName()

Возвращает имя объекта MBean, вызвавшего уведомление.

Возвращает:
имя объекта MBean, вызвавшего уведомление.

toString

public String toString()

Описание скопировано из класса: Notification

Возвращает строковое представление этого уведомления.

Переопределяет:
toString в классе Notification
Возвращает:
строковое представление этого уведомления.

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

Spec-Zone.ru

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