|
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, setImplementationpublic 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
NotificationBroadcasterremoveNotificationListener в интерфейсе NotificationBroadcasterlistener - Слушатель, который был ранее добавлен к этому 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 в интерфейсе NotificationEmitterlistener - Слушатель, который был ранее добавлен к этому MBean.filter - Фильтр, который был определен, когда слушатель был добавлен.handback - handback, который был определен, когда слушатель был добавлен.ListenerNotFoundException - Слушатель не регистрируется в MBean, или он не регистрируется в данном фильтре и handback.public void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
NotificationBroadcasteraddNotificationListener в интерфейсе NotificationBroadcasterlistener - Объект слушателя, который обработает уведомления, испускаемые вещательной компанией.filter - Объект фильтра. Если фильтр будет нулем, то никакая фильтрация не будет выполняться прежде, чем обработать уведомления.handback - Непрозрачный объект, который будет отослан назад к слушателю, когда уведомление испускается. Этот объект не может использоваться объектом вещательной компании Уведомления. Это должно быть снова послано неизменное с уведомлением слушателю.NotificationBroadcaster.removeNotificationListener(javax.management.NotificationListener)public MBeanNotificationInfo[] getNotificationInfo()
NotificationBroadcasterВозвращает указание массива, для каждого уведомления, которое этот MBean может отправить, имя Java class уведомления и типа уведомления.
Это не недопустимо для MBean, чтобы отправить уведомления, не описанные в этом массиве. Однако, некоторые клиенты сервера MBean могут зависеть от массива, являющегося полным для их корректного функционирования.
getNotificationInfo в интерфейсе NotificationBroadcasterpublic void sendNotification(Notification n)
Отправляет уведомление.
Если emitter параметр конструктору был экземпляром NotificationBroadcasterSupport тогда этот метод вызовет emitter.sendNotification.
n - уведомление, чтобы передаться.ClassCastException - если emitter параметр конструктору не был a NotificationBroadcasterSupport.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92