インストールを行うと、標準の CIM MOF ファイルがデフォルトのネームスペース /root/cimv2 と /root/security にコンパイルされます。新しいネームスペースを作成する場合は、そのネームスペースにオブジェクトを作成する前に適切な CIM MOF ファイルをネームスペースにコンパイルします。たとえば、標準の CIM 要素を使用するクラスを作成する場合は、ネームスペースに CIM Core Schema をコンパイルします。CIM Application Schema を拡張するクラスを作成する場合は、ネームスペースに CIM Application をコンパイルします。
例 6-14 のコードセグメントは、2 段階の処理により既存のネームスペース内にネームスペースを作成します。
最初に、CIMNameSpace メソッドを使用してネームスペースオブジェクトを構築します。このネームスペースオブジェクトには、ネームスペースが実際に作成される際に CIM Object Manager に渡されるパラメータが含まれます。
次に、CIMClient クラスを使用して CIM Object Manager に接続し、作成したネームスペースオブジェクトを渡します。CIM Object Manager は、このネームスペースオブジェクト内のパラメータを使用してネームスペースを作成します。
{ /*クライアントに渡すパラメータを格納するネームスペース オブジェクトをそのクライアント上に作成する。 args[0] には、ホスト名 (myhost など)が入る。 args[1] には、ネームスペース (最上位のディレクトリなど)が 入る。*/ CIMNameSpace cns = new CIMNameSpace (args[0], args[1]); /* CIM Object Manager に接続し、ネームスペース パラメータが入ったネームスペースオブジェクト (cns) を 渡す。*/ CIMClient cc = new CIMClient (cns); /* CIM Object Manager に、NULL 文字列 (ホスト名) と args[2] (secondlevel のようなネームスペース名) が入った別の ネームスペースオブジェクトを渡す。 */ CIMNameSpace cop = new CIMNameSpace("", args[2]); /* myhost の最上位レベルのネームスペースの下に 新しいネームスペース secondlevel を作成する。/* cc.createNameSpace(cop); } |