Sun WBEM SDK 開発ガイド

プロパティプロバイダインタフェース (PropertyProvider)

次の表で、プロパティプロバイダインタフェースのメソッドについて説明します。

表 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 プロパティは、その名前と親クラスによって定義されます。複数のプロパティで同じ名前を使用できますが、親クラスはプロパティを個別に識別します。


例 5–2 プロパティプロバイダの実装

...

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");
    }
    ...
}