JavaTM 2 Platform
Standard Ed. 5.0

javax.management.modelmbean
インタフェース ModelMBean

すべてのスーパーインタフェース:
DynamicMBean, ModelMBeanNotificationBroadcaster, NotificationBroadcaster, PersistentMBean
既知の実装クラスの一覧:
RequiredModelMBean

public interface ModelMBean
extends DynamicMBean, PersistentMBean, ModelMBeanNotificationBroadcaster

ModelMBean は、このインタフェースを実装する必要があります。このインタフェースの実装は、すべての JMX エージェントに付属しています。

管理対象になる Java リソースは、MBeanServer の createMBean メソッドを使って、ModelMBean をインスタンス化します。次に、ModelMBean インスタンスの ModelMBeanInfo (Descriptor 付き) を設定します。ModelMBean の ModelMBeanInfo で公開された属性とオペレーションには、MBean、コネクタ、アダプタからアクセスできます。ModelMBeanInfo Descriptor を使って、管理対象アプリケーション内の値とメソッドを定義し、ModelMBean の属性およびオペレーションにマップすることができます。このマッピングは、XML 形式のファイルを使って開発時、または実行時にプログラムを使って動的に定義できます。

MBeanServer でインスタンス化された MBean はすべて管理対象となります。これらの MBean の属性とオペレーションには、MBeanServer に接続されたコネクタまたはアダプタ経由でリモートアクセスできます。JMX 準拠の MBean でない Java オブジェクトは、MBeanServer に登録できません。リソースは、ModelMBean をインスタンス化することにより、MBean の有効性を保証します。

すべての public メソッドで、MBeanException および RuntimeOperationsException がスローされる必要があります。こうすることにより、分散型通信 (RMI、EJB など) による例外をラップできます。仕様および javadoc に記載されているシナリオ以外では、実装が必ずしもこれらの例外をスローするとは限りません。

導入されたバージョン:
1.5

メソッドの概要
 void setManagedResource(Object mr, String mr_type)
          オブジェクトのインスタンスハンドルを設定します。
 void setModelMBeanInfo(ModelMBeanInfo inModelMBeanInfo)
          ModelMBeanInfo を使って ModelMBean オブジェクトを初期化します。
 
インタフェース javax.management.DynamicMBean から継承されたメソッド
getAttribute, getAttributes, getMBeanInfo, invoke, setAttribute, setAttributes
 
インタフェース javax.management.PersistentMBean から継承されたメソッド
load, store
 
インタフェース javax.management.modelmbean.ModelMBeanNotificationBroadcaster から継承されたメソッド
addAttributeChangeNotificationListener, removeAttributeChangeNotificationListener, sendAttributeChangeNotification, sendAttributeChangeNotification, sendNotification, sendNotification
 
インタフェース javax.management.NotificationBroadcaster から継承されたメソッド
addNotificationListener, getNotificationInfo, removeNotificationListener
 

メソッドの詳細

setModelMBeanInfo

void setModelMBeanInfo(ModelMBeanInfo inModelMBeanInfo)
                       throws MBeanException,
                              RuntimeOperationsException
ModelMBeanInfo を使って ModelMBean オブジェクトを初期化します。このメソッドを使用すると、ModelMBean 上に、MBeanServer に登録されていないカスタム ModelMBeanInfo を設定できます。
ModelMBean の ModelMBeanInfo (Descriptor 付き) をカスタマイズし、ModelMBean に設定したあと、ModelMBean を MBeanServer に登録することができます。

ModelMBean が現在登録されている場合、このメソッドは IllegalStateException をラップする RuntimeOperationsException をスローします。

パラメータ:
inModelMBeanInfo - ModelMBean によって使用される ModelMBeanInfo オブジェクト
例外:
MBeanException - 分散通信 Exception をラップする
RuntimeOperationsException -

setManagedResource

void setManagedResource(Object mr,
                        String mr_type)
                        throws MBeanException,
                               RuntimeOperationsException,
                               InstanceNotFoundException,
                               InvalidTargetObjectTypeException
オブジェクトのインスタンスハンドルを設定します。このインスタンスハンドルに対して、この ModelMBean 管理インタフェース内のすべてのメソッド (MBeanInfo と Descriptor) が実行されます。

パラメータ:
mr - 管理対象のリソースになっているオブジェクト
mr_type - 管理対象のリソースの参照の型。ObjectReference、Handle、IOR、EJBHandle、RMIReference のいずれか。MBeanServer が渡された mr_type を処理できない場合、InvalidTargetTypeException がスローされる
例外:
MBeanException - オブジェクトのイニシャライザが例外をスローした場合
RuntimeOperationsException - IllegalArgumentException をラップする。パラメータとして渡された管理対象のリソースの型が null の場合
InstanceNotFoundException - 管理対象のリソースオブジェクトが見つからない場合
InvalidTargetObjectTypeException - 管理対象のリソースの型を ModelMBean または JMX エージェントで処理できない場合

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。