Solaris WBEM 開発ガイド

名前空間の作成

Solaris オペレーティング環境は、標準 CIM MOF (Managed Object Format) ファイルをコンパイルして、デフォルトの名前空間を生成します。新しい名前空間を作成する場合は、その名前空間にオブジェクトを作成する前に適切な CIM .mof ファイルを新しい名前空間にコンパイルする必要があります。たとえば、標準の CIM 要素を使用するクラスを作成する場合は、名前空間に CIM コアスキーマをコンパイルします。CIM アプリケーションスキーマを拡張するクラスを作成する場合は、名前空間に CIM アプリケーションをコンパイルします。


例 4–17 名前空間の作成

次の例では、2 段階の処理を実行して、既存の名前空間内に名前空間を作成します。

  1. 名前空間の作成時に、CIMNameSpace メソッドが CIM オブジェクトマネージャに渡すパラメータを含む名前空間オブジェクトを作成します。

  2. CIMClient クラスは、CIM オブジェクトマネージャに接続して名前空間オブジェクトを渡します。CIM オブジェクトマネージャは、名前空間オブジェクトに含まれるパラメータを使用して名前空間を作成します。

{
    ...
    /* クライアント上で名前空間オブジェクトを作成し、コマンド行
    から渡されるパラメータを格納する。args[0] にはホスト名 
    (たとえば  myhost) が、args[1] には親の名前空間 (たとえば
    最上位ディレクトリ) が含まれる */
     
    CIMNameSpace cns = new CIMNameSpace (args[0], args[1]); 

    UserPrincipal up = new UserPrincipal("root");
    PasswordCredential pc = new PasswordCredential("root_password"); 
     
    /* CIM オブジェクトマネージャに接続し、3 つのパラメータを渡す。
    3 つのパラメータとは、ホスト名 (args[0]) および親の名前空間名 
    (args[1]) を含む名前空間オブジェクト (cns)、ユーザー名文字列 
    (args[3])、およびパスワード文字列 (args[4]) を指す */
     
    CIMClient cc = new CIMClient (cns, up, pc);
     
    /* CIM オブジェクトマネージャに、NULL 文字列 (ホスト名) と 
    args[2]の子名前空間の名前 (たとえば secondlevel) を含む
    別の名前空間オブジェクトを渡す */
     
    CIMNameSpace cop = new CIMNameSpace("", args[2]);
    
    /* myhost の最上位の名前空間に args[2] として渡された名前で、
    新しい名前空間を作成する /*
     
    cc.createNameSpace(cop);
    ...
}