Sun WBEM SDK 開発ガイド

クラスの削除

クラスを削除するには、CIMClientdeleteClass メソッドを使用します。クラスを削除すると、クラス、そのサブクラス、およびそのすべてのインスタンスが削除されます。削除されるクラスを参照する関連は削除されません。

例 — クラスの削除

例 4–23 のサンプルプログラムは、deleteClass メソッドを使って、デフォルトネームスペース root\cimv2 にあるクラスを削除します。このプログラムは、4 つの必須文字列引数 (ホスト名、クラス名、ユーザー名、パスワード) を受け取ります。このプログラムを実行するユーザーは、root\cimv2 ネームスペースへの書き込みアクセス権を持つアカウントのユーザー名とパスワードを指定する必要があります。


例 4–23 クラスの削除 (deleteClass)

 
		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 DeleteClass {
	      public static void main(String args[]) throws CIMException {
			      CIMClient cc = null;
			      if(args.length != 4) {
	   		 	      System.out.println("Usage: 
                        DeleteClass host className username password"); 
	   		 	      System.exit(1);
				    }
				    try {
	   			      /**
	     		       * ネームスペースオブジェクト (cns) を作成し、ホスト名を渡す
					       */ 
						    CIMNameSpace cns = new CIMNameSpace(args[0]);
 
	   			     /** 
						    * CIM Object Manager に接続し、ネームスペース
						    * オブジェクト (cns) と、コマンド行引数から入力された
	     		      * ユーザー名とパスワードを渡す
	     		      */
						    cc = new CIMClient(cns, args[2], args[3]);
 
					      /** 
						     * クラスの名前 (args[1]) を持つオブジェクト (CIMObjectPath) 
						     * を作成する
						     */
						    CIMObjectPath cop = new CIMObjectPath(args[1]);
 
						    /**
						     * CIM オブジェクトパスで参照されるクラスを削除する
						     */
	  		  			    cc.deleteClass(cop);
					   } catch (Exception e) {
	 		  			    System.out.println("Exception: "+e);
					   }
					   if(cc != null) {
	    				    cc.close();
				     }
  	    }
}