次の表で、プロパティプロバイダインタフェースのメソッドについて説明します。
表 5–3 PropertyProvider インタフェースメソッド|
メソッド |
説明 |
|---|---|
|
CIMValue getPropertyValue(CIMObjectPath op, String originClass, String propertyName) |
op に指定されたインスタンスの propertyName によって指定されたプロパティの値を含む CIMValue を返す。originClass には、このプロパティを最初に定義した、このクラス階層のクラスの名前を指定する。 |
|
void setPropertyValue(CIMObjectPath op, String originClass, String propertyName, CIMValue cv) |
op に指定されたインスタンスの propertyName によって指定されたプロパティの値に CIMValue cv を設定する。originClass には、このプロパティを最初に定義した、このクラス階層のクラスの名前を指定する。 |
例 5–2 のコードセグメントは、例 5–2 で登録されるプロパティプロバイダ (fruit_prop_provider) クラスを作成します。fruit_prop_provider は、PropertyProvider インタフェースを実装します。
このサンプルプロパティプロバイダは、指定されたクラスのプロパティ値、親クラス、およびプロパティ名を返す getPropertyValue メソッドを示しています。CIM プロパティは、その名前と親クラスによって定義されます。複数のプロパティで同じ名前を使用できますが、親クラスはプロパティを個別に識別します。
...
public class SimplePropertyProvider implements PropertyProvider{
public void initialize(CIMOMHandle cimom)
throws CIMException {
}
public void cleanup()
throws CIMException {
}
public CIMValue getPropertyValue(CIMObjectpath op, string originclass,
string PropertyName){
if (PropertyName.equals("A")
return new CIMValue("ValueA")
else
return new CIMValue("ValueB");
}
...
}