|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.management.StandardMBean javax.management.StandardEmitterMBean
public class StandardEmitterMBean
一個其管理介面由 Java 介面上的反射確定並且可以發送通知的 MBean。
以下範例顯示了如何使用公共建構子 StandardEmitterMBean(implementation, mbeanInterface, emitter)
創建一個 MBean,使之能使用實作類別名稱 Impl、介面 Intf(對於當前標準 MBean)定義的管理介面,以及介面 NotificationEmitter
的實作來發送訊息。該範例使用類別 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 類別名和通知型別。 |
void |
removeNotificationListener(NotificationListener listener)
從此 MBean 移除一個偵聽器。 |
void |
removeNotificationListener(NotificationListener listener,
NotificationFilter filter,
Object handback)
從此 MBean 移除一個偵聽器。 |
void |
sendNotification(Notification n)
發送通知。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
建構子詳細資訊 |
---|
public StandardEmitterMBean(T implementation, Class<T> mbeanInterface, NotificationEmitter emitter)
建構一個 MBean,其管理介面由 mbeanInterface
使用給定實作指定,並且其中的通知由給定的 NotificationEmitter
處理。結果 MBean 通過將其方法轉發給 emitter
來實作 NotificationEmitter
介面。這是合法的,並且在將 implementation
和 emitter
用於相同物件時很有用。
如果 emitter
是 NotificationBroadcasterSupport
的實例,則該 MBean 的 sendNotification
方法將調用 emitter.
sendNotification
。
由新 MBean 上的 getNotificationInfo()
返回的陣列是進行建構時由 emitter.
getNotificationInfo()
返回的陣列的副本。如果由 emitter.getNotificationInfo()
返回的陣列之後發生變化,那麼這種變化不會影響到此物件的 getNotificationInfo()
。
implementation
- MBean 介面的實作。mbeanInterface
- Standard MBean 介面。emitter
- 將處理通知的物件。
IllegalArgumentException
- 如果 mbeanInterface
不遵守管理介面的 JMX 設計網要,或者給定的 implementation
沒有實作指定的介面,抑或 emitter
為 null。public StandardEmitterMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)
建構一個 MBean,其管理介面由 mbeanInterface
使用給定實作指定,並且其中的通知由給定的 NotificationEmitter
處理。此建構子可以用於建構 Standard MBean 或 MXBean。結果 MBean 通過將其方法轉發給 emitter
來實作 NotificationEmitter
介面。這是合法的,並且在將 implementation
和 emitter
用於相同物件時很有用。
如果 emitter
是 NotificationBroadcasterSupport
的實例,則該 MBean 的 sendNotification
方法將調用 emitter.
sendNotification
。
由新 MBean 上的 getNotificationInfo()
返回的陣列是進行建構時由 emitter.
getNotificationInfo()
返回的陣列的副本。如果由 emitter.getNotificationInfo()
返回的陣列之後發生變化,那麼這種變化不會影響到此物件的 getNotificationInfo()
。
implementation
- MBean 介面的實作。mbeanInterface
- Standard MBean 介面。isMXBean
- 如果為 true,則 mbeanInterface
參數會對 MXBean 介面進行命名,並且結果 MBean 是一個 MXBean。emitter
- 將處理通知的物件。
IllegalArgumentException
- 如果 mbeanInterface
不遵守管理介面的 JMX 設計網要,或者給定的 implementation
沒有實作指定的介面,抑或 emitter
為 null。protected StandardEmitterMBean(Class<?> mbeanInterface, NotificationEmitter emitter)
建構一個 MBean,其管理介面由 mbeanInterface
指定,並且其中的通知由給定的 NotificationEmitter
處理。結果 MBean 通過將其方法轉發給 emitter
來實作 NotificationEmitter
介面。
如果 emitter
是 NotificationBroadcasterSupport
的實例,則該 MBean 的 sendNotification
方法將調用 emitter.
sendNotification
。
由新 MBean 上的 getNotificationInfo()
返回的陣列是進行建構時由 emitter.
getNotificationInfo()
返回的陣列的副本。如果由 emitter.getNotificationInfo()
返回的陣列之後發生變化,那麼這種變化不會影響到此物件的 getNotificationInfo()
。
此建構子必須從實作給定 mbeanInterface
的子類別調用。
mbeanInterface
- StandardMBean 介面。emitter
- 將處理通知的物件。
IllegalArgumentException
- 如果 mbeanInterface
不遵守管理介面的 JMX 設計網要,或者給定的 this
沒有實作指定的介面,抑或 emitter
為 null。protected StandardEmitterMBean(Class<?> mbeanInterface, boolean isMXBean, NotificationEmitter emitter)
建構一個 MBean,其管理介面由 mbeanInterface
指定,並且其中的通知由給定的 NotificationEmitter
處理。此建構子可以用於建構 Standard MBean 或 MXBean。結果 MBean 通過將其方法轉發給 emitter
來實作 NotificationEmitter
介面。
如果 emitter
是 NotificationBroadcasterSupport
的實例,則該 MBean 的 sendNotification
方法將調用 emitter.
sendNotification
。
由新 MBean 上的 getNotificationInfo()
返回的陣列是進行建構時由 emitter.
getNotificationInfo()
返回的陣列的副本。如果由 emitter.getNotificationInfo()
返回的陣列之後發生變化,那麼這種變化不會影響到此物件的 getNotificationInfo()
。
此建構子必須從實作給定 mbeanInterface
的子類別調用。
mbeanInterface
- StandardMBean 介面。isMXBean
- 如果為 true,則 mbeanInterface
參數會對 MXBean 介面進行命名,並且結果 MBean 是一個 MXBean。emitter
- 將處理通知的物件。
IllegalArgumentException
- 如果 mbeanInterface
不遵守管理介面的 JMX 設計網要,或者給定的 this
沒有實作指定的介面,抑或 emitter
為 null。方法詳細資訊 |
---|
public void removeNotificationListener(NotificationListener listener) throws ListenerNotFoundException
NotificationBroadcaster
複製的描述
NotificationBroadcaster
中的 removeNotificationListener
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
參數為 null 時,這兩個參數才可以為 null。
NotificationEmitter
中的 removeNotificationListener
listener
- 以前添加到此 MBean 中的偵聽器。filter
- 添加偵聽器時指定的過濾器。handback
- 添加偵聽器時指定的回送。
ListenerNotFoundException
- 如果沒有在該 MBean 中註冊偵聽器,或者沒有用給定的過濾器和回送註冊它。public void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
NotificationBroadcaster
複製的描述
NotificationBroadcaster
中的 addNotificationListener
listener
- 將處理廣播者發出的通知的偵聽器物件。filter
- 過濾器物件。如果 filter 為 null,則處理通知前不執行過濾。handback
- 發出通知時要發送回偵聽器的不透明物件。Notification 廣播者物件不能使用此物件。應該將通知不作更改地重新發送到偵聽器。NotificationBroadcaster.removeNotificationListener(javax.management.NotificationListener)
public MBeanNotificationInfo[] getNotificationInfo()
NotificationBroadcaster
複製的描述返回一個陣列,指示此 MBean 可能發送的每個通知的 Java 類別名和通知型別。
MBean 發送此陣列中未描述的通知是合法的。但是,某些 MBean 伺服器的客戶端要想正常運行,可能要依賴完整的陣列。
NotificationBroadcaster
中的 getNotificationInfo
public void sendNotification(Notification n)
發送通知。
如果建構子的 emitter
參數是一個 NotificationBroadcasterSupport
實例,則此方法將調用 emitter.
sendNotification
。
n
- 要發送的通知。
ClassCastException
- 如果建構子的 emitter
參數不是 NotificationBroadcasterSupport
。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。