CIM プロパティは、CIM クラスの特性を記述する値です。プロパティは、1 組の関数と見なすことができます。一方の関数はプロパティ値を「取得」し、もう一方の関数はプロパティ値を「設定」します。
次の例は、enumerateInstanceNames を使って Solaris プロセッサのすべてのインスタンスの名前を返します。この例は、getProperty を使って各インスタンスの現在のクロック速度の値を取得し、println を使ってこの値を出力します。
...
{
/* オブジェクト CIMObjectPath を作成して、
Solaris_Processor クラスの名前を格納する */
CIMObjectPath cop = new CIMObjectPath("Solaris_Processor");
/* CIM オブジェクトマネージャは、Solaris_Processor クラスの
インスタンス名を含む列挙を返す */
Enumeration e = cc.enumerateInstanceNames(cop);
/* インスタンスオブジェクトパスの列挙を繰り返し処理する。
getProperty メソッドを使用して、Solaris プロセッサごとの
現在のクロック速度の値を取得する */
while(e.hasMoreElements()) {
CIMValue cv = cc.getProperty(e.nextElement(CIMObjectPath),
"CurrentClockSpeed");
System.out.println(cv);
}
...
}
次の例では、すべての Solaris_UserTemplate インスタンスの初期シェル値を設定します。このコードセグメントは、 enumerateInstanceNames を使って Solaris_User Template のすべてのインスタンスの名前を取得します。また、setProperty を使って各インスタンスの初期シェルの値を設定します。
...
{
/* オブジェクト (CIMObjectPath) を作成して
Solaris_Processor クラスの名前を格納する */
CIMObjectPath cop = new CIMObjectPath("Solaris_UserTemplate");
/* CIM オブジェクトマネージャは、
Solaris_UserTemplate クラスおよび
そのサブクラスすべてのインスタンス名を含む列挙を返す */
Enumeration e = cc.enumerateInstanceNames(cop);
/* インスタンスオブジェクトパスの列挙を繰り返し処理する。
setProperty メソッドを使用して、初期シェル値を
Solaris_UserTemplate のインスタンスごとに /usr/bin/sh に
設定する */
for (; e.hasMoreElements(); cc.setProperty(e.nextElement(),
"/usr/bin/sh", new CIMValue(new Integer(500))));
}