既存のクラスのインスタンスを作成するには、newInstance メソッドを使用します。既存のクラスがキープロパティを保持する場合、アプリケーションはそのプロパティを一意の値に設定する必要があります。インスタンスは、必要に応じてそのクラスに定義されていない別の修飾子を定義することもできます。これらの修飾子は、インスタンス、またはそのインスタンスの特定のプロパティに対して定義できます。クラス宣言内に修飾子を記述する必要はありません。
アプリケーションは、クラスに定義されている一連の修飾子を getQualifiers メソッドを使用して取得できます。
次の例では、newInstance メソッドを使用して、CIM インスタンスを表す Java クラスを作成します。たとえば、 Solaris_Package クラスから Solaris パッケージを作成します。
...
{
/* ローカルホスト上の名前空間 root\cimv2
で CIM オブジェクトマネージャに接続する。
root\cimv2 にオブジェクトへの書き込み権を
持つアカウントのユーザー名とパスワードを指定する */
UserPrincipal up = new UserPrincipal("root");
PasswordCredential pc = new PasswordCredential("root-password");
/* root ユーザーとして、root パスワードを使って名前空間に接続
する */
CIMClient cc = new CIMClient(cns, up, pc);
...
// Solaris_Package クラスを取得
cimclass = cc.getClass(new CIMObjectPath("Solaris_Package"),
true, true, true, null);
/* プロパティのデフォルト値で生成された Solaris_Package
クラスの新しいインスタンスを作成する。
クラスのプロバイダがデフォルト値を指定しない場合、
プロパティの値は NULL になるため、明示的に設定する
必要がある */
CIMInstance ci = cc.createInstance (new CIMObjectPath ("Solaris_Package"),
ci);
}
...