| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.management.JMX
public class JMX
JMX API からの static メソッドです。このクラスのインスタンスは存在しません。
| フィールドの概要 | |
|---|---|
| static String | DEFAULT_VALUE_FIELDdefaultValueフィールドの名前です。 | 
| static String | IMMUTABLE_INFO_FIELDimmutableInfoフィールドの名前です。 | 
| static String | INTERFACE_CLASS_NAME_FIELDinterfaceClassNameフィールドの名前です。 | 
| static String | LEGAL_VALUES_FIELDlegalValuesフィールドの名前です。 | 
| static String | MAX_VALUE_FIELDmaxValueフィールドの名前です。 | 
| static String | MIN_VALUE_FIELDminValueフィールドの名前です。 | 
| static String | MXBEAN_FIELDmxbeanフィールドの名前です。 | 
| static String | OPEN_TYPE_FIELDopenTypeフィールドの名前です。 | 
| static String | ORIGINAL_TYPE_FIELDoriginalTypeフィールドの名前です。 | 
| メソッドの概要 | ||
|---|---|---|
| static boolean | isMXBeanInterface(Class<?> interfaceClass)インタフェースが MXBean インタフェースかどうかをテストします。 | |
| static
 | newMBeanProxy(MBeanServerConnection connection,
              ObjectName objectName,
              Class<T> interfaceClass)ローカルまたはリモートの MBean Server 内に Standard MBean のプロキシを作成します。 | |
| static
 | newMBeanProxy(MBeanServerConnection connection,
              ObjectName objectName,
              Class<T> interfaceClass,
              boolean notificationBroadcaster)ローカルまたはリモートの MBean Server 内に Standard MBean 用のプロキシを作成します。 | |
| static
 | newMXBeanProxy(MBeanServerConnection connection,
               ObjectName objectName,
               Class<T> interfaceClass)ローカルまたはリモートの MBean Server 内に MXBean のプロキシを作成します。 | |
| static
 | newMXBeanProxy(MBeanServerConnection connection,
               ObjectName objectName,
               Class<T> interfaceClass,
               boolean notificationBroadcaster)ローカルまたはリモートの MBean Server 内に MXBean 用のプロキシを作成します。 | |
| クラス java.lang.Object から継承されたメソッド | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| フィールドの詳細 | 
|---|
public static final String DEFAULT_VALUE_FIELD
defaultValue フィールドの名前です。
public static final String IMMUTABLE_INFO_FIELD
immutableInfo フィールドの名前です。
public static final String INTERFACE_CLASS_NAME_FIELD
interfaceClassName フィールドの名前です。
public static final String LEGAL_VALUES_FIELD
legalValues フィールドの名前です。
public static final String MAX_VALUE_FIELD
maxValue フィールドの名前です。
public static final String MIN_VALUE_FIELD
minValue フィールドの名前です。
public static final String MXBEAN_FIELD
mxbean フィールドの名前です。
public static final String OPEN_TYPE_FIELD
openType フィールドの名前です。
public static final String ORIGINAL_TYPE_FIELD
originalType フィールドの名前です。
| メソッドの詳細 | 
|---|
public static <T> T newMBeanProxy(MBeanServerConnection connection,
                                  ObjectName objectName,
                                  Class<T> interfaceClass)
ローカルまたはリモートの MBean Server 内に Standard MBean のプロキシを作成します。
MBean Server mbs に ObjectName name を持つ MBean が含まれていて、MBean の管理インタフェースが Java インタフェース MyMBean によって記述されている場合は、次のようにして MBean のプロキシを構築できます。
MyMBean proxy = JMX.newMBeanProxy(mbs, name, MyMBean.class);
MyMBean は、次のようになります。
 public interface MyMBean {
     public String getSomeAttribute();
     public void setSomeAttribute(String value);
     public void someOperation(String param1, int param2);
 }
 
 これで、次の内容を実行できます。
proxy.getSomeAttribute()。これにより、mbs.getAttribute(name, "SomeAttribute") への呼び出しが行われます。
proxy.setSomeAttribute("whatever")。これにより、mbs.setAttribute(name, new Attribute("SomeAttribute", "whatever")) への呼び出しが行われます。
proxy.someOperation("param1", 2)。これが mbs.invoke(name, "someOperation", <etc>) への呼び出しに変換されます。
 このメソッドにより返されるオブジェクトは、Proxy です。このオブジェクトの InvocationHandler は MBeanServerInvocationHandler です。
このメソッドは、newMBeanProxy(connection, objectName, interfaceClass, false) と等価です。
T - たとえば、interfaceClass パラメータが MyMBean.class であれば、戻り値の型は MyMBean になることをコンパイラに知らせるconnection - 送信先の MBean サーバーobjectName - connection 内で渡される MBean の名前interfaceClass - MBean がエクスポートする 管理インタフェース。これも返されるプロキシにより実装される
public static <T> T newMBeanProxy(MBeanServerConnection connection,
                                  ObjectName objectName,
                                  Class<T> interfaceClass,
                                  boolean notificationBroadcaster)
ローカルまたはリモートの MBean Server 内に Standard MBean 用のプロキシを作成します。これは、NotificationEmitter のメソッドもサポートする場合があります。
このメソッドの動作は newMBeanProxy(MBeanServerConnection, ObjectName, Class) と同じですが、加えて notificationBroadcaster が true の場合、MBean は NotificationBroadcaster または NotificationEmitter であると見なされ、返されるプロキシは NotificationEmitter および interfaceClass を実装します。このプロキシ上で NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object) を呼び出すと、MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) が呼び出されます。 NotificationBroadcaster および NotificationEmitter のその他のメソッドの場合も同様です。
T - たとえば、interfaceClass パラメータが MyMBean.class であれば、戻り値の型は MyMBean になることをコンパイラに知らせるconnection - 送信先の MBean サーバーobjectName - connection 内で渡される MBean の名前interfaceClass - MBean がエクスポートする 管理インタフェース。これも返されるプロキシにより実装されるnotificationBroadcaster - connection 経由でメソッドを渡すことにより、 返されたプロキシに NotificationEmitter を実装させる
public static <T> T newMXBeanProxy(MBeanServerConnection connection,
                                   ObjectName objectName,
                                   Class<T> interfaceClass)
ローカルまたはリモートの MBean Server 内に MXBean のプロキシを作成します。
MBean Server mbs に ObjectName name を持つ MXBean が含まれていて、MXBean の管理インタフェースが Java インタフェース MyMXBean によって記述されている場合は、次のようにして MXBean のプロキシを構築できます。
MyMXBean proxy = JMX.newMXBeanProxy(mbs, name, MyMXBean.class);
MyMXBean は、次のようになります。
 public interface MyMXBean {
     public String getSimpleAttribute();
     public void setSimpleAttribute(String value);
     public MemoryUsage getMappedAttribute();
     public void setMappedAttribute(MemoryUsage memoryUsage);
     public MemoryUsage someOperation(String param1, MemoryUsage param2);
 }
 
 次のようになります。
proxy.getSimpleAttribute() により、mbs.getAttribute(name, "SimpleAttribute") への呼び出しが行われます。
proxy.setSimpleAttribute("whatever") により、mbs.setAttribute(name, new Attribute("SimpleAttribute", "whatever")) への呼び出しが行われます。
proxy.getMappedAttribute() により、mbs.getAttribute("MappedAttribute") への呼び出しが行われます。MXBean マッピングルールに従うと、属性 MappedAttribute の実際の型は CompositeData であり、これが mbs.getAttribute の呼び出しで返されます。次に、プロキシは、MXBean マッピングルールを使って、CompositeData を予期される型 MemoryUsage に変換して戻します。
同様に、proxy.setMappedAttribute(memoryUsage) は、MemoryUsage 引数を CompositeData に変換してから mbs.setAttribute を呼び出します。
proxy.someOperation("whatever", memoryUsage) は、MemoryUsage 引数を CompositeData に変換して、mbs.invoke を呼び出します。mbs.invoke により返される値も CompositeData になります。プロキシは、MXBean マッピングルールを使って、これを予期される型 MemoryUsage に変換します。
このメソッドにより返されるオブジェクトは、Proxy です。このオブジェクトの InvocationHandler は MBeanServerInvocationHandler です。
このメソッドは、newMXBeanProxy(connection, objectName, interfaceClass, false) と等価です。
T - たとえば、interfaceClass パラメータが MyMXBean.class であれば、戻り値の型は MyMXBean になることをコンパイラに知らせるconnection - 送信先の MBean サーバーobjectName - connection 内で渡される MBean の名前interfaceClass - MXBean インタフェース。 これも返されるプロキシにより実装される
public static <T> T newMXBeanProxy(MBeanServerConnection connection,
                                   ObjectName objectName,
                                   Class<T> interfaceClass,
                                   boolean notificationBroadcaster)
ローカルまたはリモートの MBean Server 内に MXBean 用のプロキシを作成します。これは、NotificationEmitter のメソッドもサポートする場合があります。
このメソッドの動作は newMXBeanProxy(MBeanServerConnection, ObjectName, Class) と同じですが、加えて notificationBroadcaster が true の場合、MXBean は NotificationBroadcaster または NotificationEmitter であると見なされ、返されるプロキシは NotificationEmitter および interfaceClass を実装します。このプロキシ上で NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object) を呼び出すと、MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) が呼び出されます。 NotificationBroadcaster および NotificationEmitter のその他のメソッドの場合も同様です。
T - たとえば、interfaceClass パラメータが MyMXBean.class であれば、戻り値の型は MyMXBean になることをコンパイラに知らせるconnection - 送信先の MBean サーバーobjectName - connection 内で渡される MBean の名前interfaceClass - MXBean インタフェース。 これも返されるプロキシにより実装されるnotificationBroadcaster - connection 経由でメソッドを渡すことにより、 返されたプロキシに NotificationEmitter を実装させる
public static boolean isMXBeanInterface(Class<?> interfaceClass)
インタフェースが MXBean インタフェースかどうかをテストします。@MXBean または @MXBean(true) が注釈として付加されているか、@MXBean の注釈はないが名前が "MXBean" で終わる場合は、MXBean インタフェースです。
interfaceClass - 候補のインタフェース
interfaceClass がインタフェースであり、 示された条件を満たす場合は true
NullPointerException - interfaceClass が null の場合| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。