Spec-Zone .ru
спецификации, руководства, описания, API
|
public class StandardEmitterMBean extends StandardMBean implements NotificationEmitter
MBean, интерфейс управления которого определяется отражением об интерфейсе Java, и это испускает уведомления.
Следующий пример показывает, как использовать общедоступного конструктора StandardEmitterMBean(implementation, mbeanInterface, emitter)
создать MBean испускание уведомлений с любой реализацией имя class Impl, с определенным интерфейсом управления (что касается текущего Стандартного MBeans) любым интерфейсом Intf, и с любой реализацией интерфейса NotificationEmitter
. Пример использует class NotificationBroadcasterSupport
как реализация интерфейса NotificationEmitter
.
MBeanServer mbs; ... final String[] types = new String[] {"sun.disc.space","sun.disc.alarm"}; final MBeanNotificationInfo info = new MBeanNotificationInfo( types, Notification.class.getName(), "Notification about disc info."); final NotificationEmitter emitter = new NotificationBroadcasterSupport(info); final Intf impl = new Impl(...); final Object mbean = new StandardEmitterMBean( impl, Intf.class, emitter); mbs.registerMBean(mbean, objectName);
StandardMBean
Модификатор | Конструктор и Описание |
---|---|
protected |
StandardEmitterMBean(Class<?> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется
mbeanInterface , и где уведомления обрабатываются данным NotificationEmitter . |
protected |
StandardEmitterMBean(Class<?> mbeanInterface, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется
mbeanInterface , и где уведомления обрабатываются данным NotificationEmitter . |
|
StandardEmitterMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется
mbeanInterface , с данной реализацией и где уведомления обрабатываются данным NotificationEmitter . |
|
StandardEmitterMBean(T implementation, Class<T> mbeanInterface, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется
mbeanInterface , с данной реализацией и где уведомления обрабатываются данным NotificationEmitter . |
Модификатор и Тип | Метод и Описание |
---|---|
void |
addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Добавляет слушатель этого MBean.
|
MBeanNotificationInfo[] |
getNotificationInfo()
Возвращает указание массива, для каждого уведомления, которое этот MBean может отправить, имя Java class уведомления и типа уведомления.
|
void |
removeNotificationListener(NotificationListener listener)
Удаляет слушателя из этого MBean.
|
void |
removeNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Удаляет слушателя из этого MBean.
|
void |
sendNotification(Notification n)
Отправляет уведомление.
|
cacheMBeanInfo, getAttribute, getAttributes, getCachedMBeanInfo, getClassName, getConstructors, getDescription, getDescription, getDescription, getDescription, getDescription, getDescription, getDescription, getImpact, getImplementation, getImplementationClass, getMBeanInfo, getMBeanInterface, getParameterName, getParameterName, invoke, postDeregister, postRegister, preDeregister, preRegister, setAttribute, setAttributes, setImplementation
public StandardEmitterMBean(T implementation, Class<T> mbeanInterface, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется mbeanInterface
, с данной реализацией и где уведомления обрабатываются данным NotificationEmitter
. Результирующий MBean реализует NotificationEmitter
интерфейс, передавая его методы emitter
. Это является законным и полезным для implementation
и emitter
быть тем же самым объектом.
Если emitter
экземпляр NotificationBroadcasterSupport
тогда MBean's sendNotification
метод вызовет emitter.
sendNotification
.
Массив, возвращенный getNotificationInfo()
на новом MBean копия массива, возвращенного emitter.
getNotificationInfo()
во время конструкции. Если массив возвратился emitter.getNotificationInfo()
более поздние изменения, которые не будут иметь никакого эффекта на этот объект getNotificationInfo()
.
implementation
- реализация интерфейса MBean.mbeanInterface
- Стандартный интерфейс MBean.emitter
- объект, который обработает уведомления.IllegalArgumentException
- если mbeanInterface
не следует за шаблонами разработки JMX для Интерфейсов управления, или если данный implementation
не реализует указанный интерфейс, или если emitter
нуль.public StandardEmitterMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется mbeanInterface
, с данной реализацией и где уведомления обрабатываются данным NotificationEmitter
. Этот конструктор может использоваться, чтобы сделать или Стандартный MBeans или MXBeans. Результирующий MBean реализует NotificationEmitter
интерфейс, передавая его методы emitter
. Это является законным и полезным для implementation
и emitter
быть тем же самым объектом.
Если emitter
экземпляр NotificationBroadcasterSupport
тогда MBean's sendNotification
метод вызовет emitter.
sendNotification
.
Массив, возвращенный getNotificationInfo()
на новом MBean копия массива, возвращенного emitter.
getNotificationInfo()
во время конструкции. Если массив возвратился emitter.getNotificationInfo()
более поздние изменения, которые не будут иметь никакого эффекта на этот объект getNotificationInfo()
.
implementation
- реализация интерфейса MBean.mbeanInterface
- Стандартный интерфейс MBean.isMXBean
- Если это правда, mbeanInterface
названия параметра интерфейс MXBean и результирующий MBean являются MXBean.emitter
- объект, который обработает уведомления.IllegalArgumentException
- если mbeanInterface
не следует за шаблонами разработки JMX для Интерфейсов управления, или если данный implementation
не реализует указанный интерфейс, или если emitter
нуль.protected StandardEmitterMBean(Class<?> mbeanInterface, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется mbeanInterface
, и где уведомления обрабатываются данным NotificationEmitter
. Результирующий MBean реализует NotificationEmitter
интерфейс, передавая его методы emitter
.
Если emitter
экземпляр NotificationBroadcasterSupport
тогда MBean's sendNotification
метод вызовет emitter.
sendNotification
.
Массив, возвращенный getNotificationInfo()
на новом MBean копия массива, возвращенного emitter.
getNotificationInfo()
во время конструкции. Если массив возвратился emitter.getNotificationInfo()
более поздние изменения, которые не будут иметь никакого эффекта на этот объект getNotificationInfo()
.
Этого конструктора нужно вызвать от подкласса, который реализует данный mbeanInterface
.
mbeanInterface
- интерфейс StandardMBean.emitter
- объект, который обработает уведомления.IllegalArgumentException
- если mbeanInterface
не следует за шаблонами разработки JMX для Интерфейсов управления, или если this
не реализует указанный интерфейс, или если emitter
нуль.protected StandardEmitterMBean(Class<?> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)
Сделайте MBean, интерфейс управления которого определяется mbeanInterface
, и где уведомления обрабатываются данным NotificationEmitter
. Этот конструктор может использоваться, чтобы сделать или Стандартный MBeans или MXBeans. Результирующий MBean реализует NotificationEmitter
интерфейс, передавая его методы emitter
.
Если emitter
экземпляр NotificationBroadcasterSupport
тогда MBean's sendNotification
метод вызовет emitter.
sendNotification
.
Массив, возвращенный getNotificationInfo()
на новом MBean копия массива, возвращенного emitter.
getNotificationInfo()
во время конструкции. Если массив возвратился emitter.getNotificationInfo()
более поздние изменения, которые не будут иметь никакого эффекта на этот объект getNotificationInfo()
.
Этого конструктора нужно вызвать от подкласса, который реализует данный mbeanInterface
.
mbeanInterface
- интерфейс StandardMBean.isMXBean
- Если это правда, mbeanInterface
названия параметра интерфейс MXBean и результирующий MBean являются MXBean.emitter
- объект, который обработает уведомления.IllegalArgumentException
- если mbeanInterface
не следует за шаблонами разработки JMX для Интерфейсов управления, или если this
не реализует указанный интерфейс, или если emitter
нуль.public void removeNotificationListener(NotificationListener listener) throws ListenerNotFoundException
NotificationBroadcaster
removeNotificationListener
в интерфейсе NotificationBroadcaster
listener
- Слушатель, который был ранее добавлен к этому MBean.ListenerNotFoundException
- Слушатель не регистрируется в MBean.NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
, NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
public void removeNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws ListenerNotFoundException
NotificationEmitter
Удаляет слушателя из этого MBean. У MBean должен быть слушатель, который точно соответствует данный listener
, filter
, и handback
параметры. Если есть больше чем один такой слушатель, только один удаляется.
filter
и handback
параметры могут быть нулем, если и только если они - нуль в слушателе, чтобы быть удаленными.
removeNotificationListener
в интерфейсе NotificationEmitter
listener
- Слушатель, который был ранее добавлен к этому MBean.filter
- Фильтр, который был определен, когда слушатель был добавлен.handback
- handback, который был определен, когда слушатель был добавлен.ListenerNotFoundException
- Слушатель не регистрируется в MBean, или он не регистрируется в данном фильтре и handback.public void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
NotificationBroadcaster
addNotificationListener
в интерфейсе NotificationBroadcaster
listener
- Объект слушателя, который обработает уведомления, испускаемые вещательной компанией.filter
- Объект фильтра. Если фильтр будет нулем, то никакая фильтрация не будет выполняться прежде, чем обработать уведомления.handback
- Непрозрачный объект, который будет отослан назад к слушателю, когда уведомление испускается. Этот объект не может использоваться объектом вещательной компании Уведомления. Это должно быть снова послано неизменное с уведомлением слушателю.NotificationBroadcaster.removeNotificationListener(javax.management.NotificationListener)
public MBeanNotificationInfo[] getNotificationInfo()
NotificationBroadcaster
Возвращает указание массива, для каждого уведомления, которое этот MBean может отправить, имя Java class уведомления и типа уведомления.
Это не недопустимо для MBean, чтобы отправить уведомления, не описанные в этом массиве. Однако, некоторые клиенты сервера MBean могут зависеть от массива, являющегося полным для их корректного функционирования.
getNotificationInfo
в интерфейсе NotificationBroadcaster
public void sendNotification(Notification n)
Отправляет уведомление.
Если emitter
параметр конструктору был экземпляром NotificationBroadcasterSupport
тогда этот метод вызовет emitter.
sendNotification
.
n
- уведомление, чтобы передаться.ClassCastException
- если emitter
параметр конструктору не был a NotificationBroadcasterSupport
.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92