次の表で、プロパティプロバイダインタフェースのメソッドについて説明します。
表 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"); } ... }