Solaris WBEM 開発ガイド

CIM を Java プログラミング言語にマップする方法

次の表に、CIM 要素を Java プログラミング言語の要素にマップする方法を示します。

表 7–2 CIM 要素を Java 要素にマップする方法

CIM 要素 

Java 要素 

クラス 

生成された Java ソースファイル名のベースとして、CIM クラス名が使用される。生成された Java クラスは、MOF のクラスとサブクラスの関係に定義された継承に従う 

プロパティ 

各 CIM プロパティにアクセス用メソッドおよび変更メソッドが作成される。関連するアクセス用メソッドおよび変更メソッドのベースとして、CIM プロパティ名が使用される 

メソッド 

各 CIM メソッドに対応する Java メソッドが作成される。関連した Java メソッド名のベースとして CIM メソッド名が使用される。戻り値は同様の Java データ型にマップされる。入力および出力パラメータが Java メソッドの引数として使用される。出力パラメータはメソッドシグニチャーに直接追加されずに、メソッドパラメータとして追加される出力コンテナオブジェクトにカプセル化される 

修飾子 

修飾子については、表 7–4 および 表 7–5 を参照

関連 

特定の要素は要求されていない 

インジケーション 

特定の要素は要求されていない 

参照方法 

それぞれの CIM 参照に対して、生成された Java インタフェースへの参照が作成される 

トリガー 

特定の要素は要求されていない 

スキーマ 

特定の要素は要求されていない 

次の表では、CIM データ型を Java データ型にマップする方法を説明します。

表 7–3 CIM データ型を Java データ型にマップする方法

CIM データ型 

Java データ型 

アクセス用メソッド 

変更メソッド  

uint8 X

UnsignedInt8

UnsignedInt8 getX();

void setX(UnsignedInt8 x);

sint8 X

Byte

Byte getX();

void setX(Byte x);

uint16 X

UnsignedInt16

UnsignedInt16 getX();

void setX(UnsignedInt16 x);

sint16 X

Short

Short getX();

void setX(Short x);

uint32 X

UnsignedInt32

UnsignedInt32 getX();

void setX(UnsignedInt32 x);

sint32 X

Integer

Integer getX();

void setX(Integer x);

uint64 X

UnsignedInt64

UnsignedInt64 getX();

void setX(UnsignedInt64 x);

sint64 X

Long

Long getX();

void setX(Long x);

String X

String

String getX();

void setX(String x);

Boolean X

Boolean

Boolean isX();

void setX(Boolean x);

real32 X

Float

Float getX();

void setX(Float x);

real64 X

Double

Double getX();

void setX(Double x);

DateTime X

CIMDateTime

CIMDateTime getX();

void setX(CIMDateTime x);

Reference X

CIMObjectPath

CIMObjectPath getX();

void setX(CIMObjectPath x);

char16 X

Character

Character getX();

void setX(Character x);

次の表にモデルのメタ構造体の定義を改良するメタ修飾子のリストを示します。これらの修飾子は、互いに排他的で、MOF 構文のオブジェクトクラスまたはプロパティ宣言の実際の使用方法を改良します。

表 7–4 メタ修飾子

修飾子 

スコープ  

型 

意味 

関連 

クラス 

Boolean 

マップに影響しない 

インジケーション 

クラス 

Boolean 

クラスは abstract クラス 

次の表では、標準修飾子と CIM オブジェクトを Bean にマップする際に与える影響について説明します。オプションの修飾子はサポートされていません。このマッピングに基づいて、個々のインタフェースおよびクラスの Javadoc API ドキュメンテーションが生成されます。

表 7–5 標準修飾子

修飾子 

スコープ  

意味 

ABSTRACT 

クラス、関連、インジケーション 

クラスは abstract クラスなので、Java プログラミング言語インタフェースに影響を与えない 

DESCRIPTION 

任意 

提供される情報によって、ソースファイルに Javadoc コメントが生成される 

DISPLAYNAME 

プロパティ 

表示名のアクセス用メソッドが作成される 

public String displayNameFor Property();

IN 

パラメータ 

メソッドシグニチャーを決定する 

OUT 

パラメータ 

メソッドパラメータシグニチャーおよび戻り値を決定する 

TERMINAL 

クラス 

クラスまたはインタフェースは、final 

UNITS 

プロパティ、メソッド、パラメータ 

ほかのアクセス用メソッドが作成される 

public String get propertyUnits();

VALUEMAP 

プロパティ、メソッド、パラメータ 

Bean には、CIM ValueMap または Values 修飾子が設定されている CIM クラスの各プロパティの生成された定数が含まれる。定数の名前と値を取得してこれらのクラス変数を生成する方法は、プロパティとその修飾子のデータ型によって異なる 


注 –

CIM 仕様で定義されている ValueMap および Values 修飾子は、修飾子名から予想される意味とは異なる場合がある。ValueMap はプロパティの正当な値セットを定義する。Values は、整数値と文字列の相互変換を行う


VALUES 

プロパティ、メソッド、パラメータ 

Bean には、CIM ValueMap または Values 修飾子が設定されている CIM クラスの各プロパティの生成された定数が含まれる。定数の名前と値を取得してこれらのクラス変数を生成する方法は、プロパティとその修飾子のデータ型によって異なる 


注 –

CIM 仕様で定義されている ValueMap および Values 修飾子は、修飾子名から予想される意味とは異なる場合がある。ValueMap はプロパティの正当な値セットを定義する。Values は、整数値と文字列の相互変換を行う


VERSION 

クラス、スキーマ、関連、インジケーション 

クラスには、getClassVersion() メソッドが設定されている

次の表では、MOF 要素を Java 要素にマップする方法を説明します。

表 7–6 MOF 要素を Java 要素にマップする方法

MOF 要素 

Java 要素 

説明修飾子 

クラス、プロパティ、またはメソッドの説明 

クラスの完全な MOF 表現 

Java インタフェースと実装される Bean を指定する Javadoc クラスの説明