- すべての実装されたインタフェース:
- DynamicMBean,- MBeanRegistration,- NotificationBroadcaster,- NotificationEmitter
public class StandardEmitterMBean extends StandardMBean implements NotificationEmitter
Javaインタフェースのリフレクションによって管理インタフェースを決定し、通知を発行するMBeanです。
次の例は、publicコンストラクタStandardEmitterMBean(implementation, mbeanInterface, emitter)を使用して、任意の実装クラス名Impl、任意のインタフェースIntfで定義された管理インタフェース(現在のStandard MBean用)、およびインタフェースNotificationEmitterの任意の実装を指定し、通知を発行するMBeanを作成する方法を示しています。 この例では、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);
     - 導入されたバージョン:
- 1.6
- 関連項目:
- StandardMBean
- 
コンストラクタのサマリーコンストラクタ 修飾子 コンストラクタ 説明 protectedStandardEmitterMBean(Class<?> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)管理インタフェースがmbeanInterfaceで指定されたMBeanを作成します。通知は、指定したNotificationEmitterにより処理されます。protectedStandardEmitterMBean(Class<?> mbeanInterface, NotificationEmitter emitter)管理インタフェースがmbeanInterfaceで指定されたMBeanを作成します。通知は、指定したNotificationEmitterにより処理されます。StandardEmitterMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)指定された実装を持ち、指定されたNotificationEmitterで通知が処理される、管理インタフェースがmbeanInterfaceで指定されたMBeanを作成します。StandardEmitterMBean(T implementation, Class<T> mbeanInterface, NotificationEmitter emitter)指定された実装を持ち、指定されたNotificationEmitterで通知が処理される、管理インタフェースがmbeanInterfaceで指定されたMBeanを作成します。
- 
メソッドのサマリー修飾子と型 メソッド 説明 voidsendNotification(Notification n)通知を送信します。クラス javax.management.StandardMBeanで宣言されたメソッドcacheMBeanInfo, getCachedMBeanInfo, getClassName, getConstructors, getDescription, getDescription, getDescription, getDescription, getDescription, getDescription, getDescription, getImpact, getImplementation, getImplementationClass, getMBeanInfo, getMBeanInterface, getParameterName, getParameterName, postDeregister, postRegister, preDeregister, preRegister, setImplementationクラス java.lang.Objectで宣言されたメソッドclone、equals、finalize、getClass、hashCode、notify、notifyAll、toString、wait、wait、waitインタフェース javax.management.DynamicMBeanで宣言されたメソッドgetAttribute, getAttributes, invoke, setAttribute, setAttributesインタフェース javax.management.NotificationBroadcasterで宣言されたメソッドaddNotificationListener, getNotificationInfo, removeNotificationListener
- 
コンストラクタの詳細- 
StandardEmitterMBeanpublic StandardEmitterMBean(T implementation, Class<T> mbeanInterface, NotificationEmitter emitter)指定された実装を持ち、指定された NotificationEmitterで通知が処理される、管理インタフェースがmbeanInterfaceで指定されたMBeanを作成します。 生成されるMBeanは、そのメソッドをemitterに転送することにより、NotificationEmitterインタフェースを実装します。implementationおよびemitterを同じオブジェクトにすることは、正当で有用です。emitterがNotificationBroadcasterSupportのインスタンスである場合、MBeanのsendNotificationメソッドはemitter.sendNotificationを呼び出します。NotificationBroadcaster.getNotificationInfo()によって新しいMBeanに返される配列は、構築時にemitter.getNotificationInfo()によって返される配列のコピーです。emitter.getNotificationInfo()により返された配列があとで変更されても、オブジェクトのgetNotificationInfo()が影響を受けることはありません。- 型パラメータ:
- T- MBeanの実装型
- パラメータ:
- implementation- MBeanインタフェースの実装。
- mbeanInterface- Standard MBeanインタフェース。
- emitter- 通知を処理するオブジェクト。
- 例外:
- IllegalArgumentException-- mbeanInterfaceが管理インタフェースのJMX設計パターンに従っていない場合、指定された- implementationが指定されたインタフェースを実装していない場合、または- emitterがnullの場合。
 
- 
StandardEmitterMBeanpublic StandardEmitterMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)指定された実装を持ち、指定された NotificationEmitterで通知が処理される、管理インタフェースがmbeanInterfaceで指定されたMBeanを作成します。 このコンストラクタは、Standard MBeanまたはMXBeanの作成に使用できます。 生成されるMBeanは、そのメソッドをemitterに転送することにより、NotificationEmitterインタフェースを実装します。implementationおよびemitterを同じオブジェクトにすることは、正当で有用です。emitterがNotificationBroadcasterSupportのインスタンスである場合、MBeanのsendNotificationメソッドはemitter.sendNotificationを呼び出します。NotificationBroadcaster.getNotificationInfo()によって新しいMBeanに返される配列は、構築時にemitter.getNotificationInfo()によって返される配列のコピーです。emitter.getNotificationInfo()により返された配列があとで変更されても、オブジェクトのgetNotificationInfo()が影響を受けることはありません。- 型パラメータ:
- T- MBeanの実装型
- パラメータ:
- implementation- MBeanインタフェースの実装。
- mbeanInterface- Standard MBeanインタフェース。
- isMXBean- trueの場合、- mbeanInterfaceパラメータによりMXBeanインタフェースが指定され、結果のMBeanはMXBeanになる。
- emitter- 通知を処理するオブジェクト。
- 例外:
- IllegalArgumentException-- mbeanInterfaceが管理インタフェースのJMX設計パターンに従っていない場合、指定された- implementationが指定されたインタフェースを実装していない場合、または- emitterがnullの場合。
 
- 
StandardEmitterMBeanprotected StandardEmitterMBean(Class<?> mbeanInterface, NotificationEmitter emitter)管理インタフェースが mbeanInterfaceで指定されたMBeanを作成します。通知は、指定したNotificationEmitterにより処理されます。 生成されるMBeanは、そのメソッドをemitterに転送することにより、NotificationEmitterインタフェースを実装します。emitterがNotificationBroadcasterSupportのインスタンスである場合、MBeanのsendNotificationメソッドはemitter.sendNotificationを呼び出します。NotificationBroadcaster.getNotificationInfo()によって新しいMBeanに返される配列は、構築時にemitter.getNotificationInfo()によって返される配列のコピーです。emitter.getNotificationInfo()により返された配列があとで変更されても、オブジェクトのgetNotificationInfo()が影響を受けることはありません。このコンストラクタの呼出しは、指定した mbeanInterfaceを実装するサブクラスから行う必要があります。- パラメータ:
- mbeanInterface- StandardMBeanインタフェース。
- emitter- 通知を処理するオブジェクト。
- 例外:
- IllegalArgumentException-- mbeanInterfaceが管理インタフェースのJMX設計パターンに従っていない場合、- thisが指定されたインタフェースを実装していない場合、または- emitterがnullの場合。
 
- 
StandardEmitterMBeanprotected StandardEmitterMBean(Class<?> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)管理インタフェースが mbeanInterfaceで指定されたMBeanを作成します。通知は、指定したNotificationEmitterにより処理されます。 このコンストラクタは、Standard MBeanまたはMXBeanの作成に使用できます。 生成されるMBeanは、そのメソッドをemitterに転送することにより、NotificationEmitterインタフェースを実装します。emitterがNotificationBroadcasterSupportのインスタンスである場合、MBeanのsendNotificationメソッドはemitter.sendNotificationを呼び出します。NotificationBroadcaster.getNotificationInfo()によって新しいMBeanに返される配列は、構築時にemitter.getNotificationInfo()によって返される配列のコピーです。emitter.getNotificationInfo()により返された配列があとで変更されても、オブジェクトのgetNotificationInfo()が影響を受けることはありません。このコンストラクタの呼出しは、指定した mbeanInterfaceを実装するサブクラスから行う必要があります。- パラメータ:
- mbeanInterface- StandardMBeanインタフェース。
- isMXBean- trueの場合、- mbeanInterfaceパラメータによりMXBeanインタフェースが指定され、結果のMBeanはMXBeanになる。
- emitter- 通知を処理するオブジェクト。
- 例外:
- IllegalArgumentException-- mbeanInterfaceが管理インタフェースのJMX設計パターンに従っていない場合、- thisが指定されたインタフェースを実装していない場合、または- emitterがnullの場合。
 
 
- 
- 
メソッドの詳細- 
sendNotificationpublic void sendNotification(Notification n)通知を送信します。 コンストラクタに渡される emitterパラメータがNotificationBroadcasterSupportのインスタンスであった場合、このメソッドはemitter.sendNotificationを呼び出します。- パラメータ:
- n- 送信する通知。
- 例外:
- ClassCastException- コンストラクタに渡される- emitterパラメータが- NotificationBroadcasterSupportでなかった場合。
 
 
-