例 4–18 のプログラムは、次のメソッドを使用してクラス定義を検出します。
CIMNameSpace – 新しいネームスペースを作成する
CIMClient – CIM Object Manager への新しいクライアント接続を作成する
CIMObjectPath – オブジェクトパス (検出するクラス名を含むオブジェクト) を作成する
getClass – CIM Object Manager からクラスを検出する
import java.rmi.*;
import com.sun.wbem.client.CIMClient;
import com.sun.wbem.cim.CIMInstance;
import com.sun.wbem.cim.CIMValue;
import com.sun.wbem.cim.CIMProperty;
import com.sun.wbem.cim.CIMNameSpace;
import com.sun.wbem.cim.CIMObjectPath;
import com.sun.wbem.cim.CIMClass;
import com.sun.wbem.cim.CIMException;
import java.util.Enumeration;
/**
* コマンド行に指定されたクラスを取得。デフォルトの
* ネームスペース root\cimv2 で作業する。
*/
public class GetClass {
public static void main(String args[]) throws CIMException {
CIMClient cc = null;
try {
CIMNameSpace cns = new CIMNameSpace(args[0]);
cc = new CIMClient(cns);
CIMObjectPath cop = new CIMObjectPath(args[1]);
// 指定されたクラスに対してローカルであるメソッドと
// プロパティだけを返す (localOnly が true)。
cc.getClass(cop, cc.DEEP);
} catch (Exception e) {
System.out.println("Exception: "+e);
}
if(cc != null) {
cc.close();
}
}
}