インタフェース | 説明 |
---|---|
ModelMBean |
このインタフェースはModelMBeanによって実装される必要があります。
|
ModelMBeanInfo |
ModelMBeanInfoは、ModelMBeanごとにこのインタフェースを実装する必要があります。
|
ModelMBeanNotificationBroadcaster |
このインタフェースはModelMBeanによって実装される必要があります。
|
クラス | 説明 |
---|---|
DescriptorSupport |
このクラスは、ModelMBean要素のメタデータ・セットを表します。
|
ModelMBeanAttributeInfo |
ModelMBeanAttributeInfoオブジェクトは、ModelMBeanの属性を記述します。
|
ModelMBeanConstructorInfo |
ModelMBeanConstructorInfoオブジェクトは、ModelMBeanのコンストラクタを記述します。
|
ModelMBeanInfoSupport |
このクラスは、ModelMBeanのメタデータを表します。
|
ModelMBeanNotificationInfo |
ModelMBeanNotificationInfoオブジェクトは、ModelMBeanが発行する通知を記述します。
|
ModelMBeanOperationInfo |
ModelMBeanOperationInfoオブジェクトは、ModelMBeanの管理オペレーションを記述します。
|
RequiredModelMBean |
このクラスは、ModelMBeanの実装です。
|
例外 | 説明 |
---|---|
InvalidTargetObjectTypeException |
指定されたターゲット・オブジェクト型が無効な場合にスローされる例外です。
|
XMLParseException |
この例外は、XML形式の文字列がModelMBeanオブジェクトに解析される場合、またはXML形式の文字列がModelMBeanオブジェクトから作成される場合にスローされます。
|
ModelMBeanクラスの定義を提供します。Model MBeanは、管理インタフェースと配下の管理対象リソースのブリッジとして機能するMBeanです。管理インタフェースと管理対象リソースは、どちらもJavaオブジェクトとして指定されます。複数の異なった管理インタフェースおよび管理対象リソースで、同じModel MBean実装を繰返し利用できます。また、Model MBean実装は、永続性機能、キャッシング機能などの共通機能を提供できます。
Model MBeanは、ModelMBean
インタフェースを実装します。Model MBeanはDynamicMBean
であり、ModelMBeanInfo
を実装するオブジェクトを返すgetMBeanInfo
メソッドを持っています。
すべてのMBeanは、MBean自体の情報とその属性、オペレーション、コンストラクタ、および通知を備えたMBeanInfo
を持ちます。Model MBeanは、このMBeanInfo
に、(key,value)のペア形式の追加情報をエンコードするDescriptor
を追加します。通常、Descriptor
は、DescriptorSupport
のインスタンスです。
RequiredModelMBean
クラスは、標準Model MBean実装を提供します。
次に、MBeanサーバーからHashMap
のget
メソッドを管理できるようにするためのModel MBeanの例を示します。MBeanサーバーからは、これ以外のメソッドは利用できません。この例では、HashMap
に関する特別な情報はありません。同様にして、任意のpublicクラスのpublicメソッドを管理用に公開できます。
import java.lang.reflect.Method; import java.util.HashMap; import javax.management.*; import javax.management.modelmbean.*; // ... MBeanServer mbs = MBeanServerFactory.createMBeanServer(); // The MBean Server HashMap map = new HashMap(); // The resource that will be managed // Construct the management interface for the Model MBean Method getMethod = HashMap.class.getMethod("get", new Class[] {Object.class}); ModelMBeanOperationInfo getInfo = new ModelMBeanOperationInfo("Get value for key", getMethod); ModelMBeanInfo mmbi = new ModelMBeanInfoSupport(HashMap.class.getName(), "Map of keys and values", null, // no attributes null, // no constructors new ModelMBeanOperationInfo[] {getInfo}, null); // no notifications // Make the Model MBean and link it to the resource ModelMBean mmb = new RequiredModelMBean(mmbi); mmb.setManagedResource(map, "ObjectReference"); // Register the Model MBean in the MBean Server ObjectName mapName = new ObjectName(":type=Map,name=whatever"); mbs.registerMBean(mmb, mapName); // Resource can evolve independently of the MBean map.put("key", "value"); // Can access the "get" method through the MBean Server mbs.invoke(mapName, "get", new Object[] {"key"}, new String[] {Object.class.getName()}); // returns "value"
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.