UML から Java への変換プロファイルには、ソース・モデル内の要素を検証するために適用可能なステレオタイプ、および変換がどのように Java™ コードを生成するかを制御するステレオタイプがいくつか含まれています。
重要: UML から Java への (非推奨) 変換プロファイルは、ソース・モデルに適用しないでください。
代わりに、
UML から Java への変換プロファイルを適用してください。
非推奨の
プロファイルに新規ステレオタイプは含まれておらず、UML から Java への変換プロファイル内のステレオタイプと同名のステレオタイプについても、その検証規則は異なっています。
非推奨のプロファイルを適用する可能性があるのは、
IBM® Rational® モデリング製品のバージョン 6 のリリースから UML モデルをマイグレーションし、一連の古い検証規則を使用して、ソース・モデルを自動的に検証する場合のみです。
UML から Java への変換プロファイルには、ソース・モデル要素を検証可能なステレオタイプが含まれています。
モデルにプロファイルを適用しても、プロファイルにステレオタイプが自動的に適用されるわけではありません。
検証対象となるそれぞれのモデル要素に対して適切なステレオタイプを適用する必要があります。
これらの検証用ステレオタイプを使用するのはモデリング・フェーズに限られ、
変換がどのように Java ソース・コードを生成するかについては影響しません。
その検査プロセスにより、プライベートまたは保護されたトップレベルの各クラスおよびインターフェースの、多重継承、循環の汎化、名前の競合、プロパティーの競合、および可視性の競合などの各問題が検査されます。要素が検証規則に従っていない場合、警告ダイアログ・ボックスが表示されます。
例えば、ソース・モデル内のクラスに «JavaClass» ステレオタイプを適用して、そのクラスを My$Class に名前変更すると、警告メッセージが表示されます。
注: 大規模かつ複雑なモデルでは、ソース・モデル要素を検証するステレオタイプの適用数に応じて、
オープン操作、保存操作、またはクローズ操作により多くの時間がかかる場合があります。
以下の表は、ソース・モデル要素を検証するために適用可能なステレオタイプをリストしたものです。
| ステレオタイプ |
検証対象のソース・モデル要素 |
| «JavaClass» |
クラス |
| «JavaEnum» |
列挙 |
| «JavaEnumConstant» |
列挙型リテラル |
| «JavaField» |
クラスの属性 |
| «JavaInterface» |
インターフェース |
| «JavaMethod» |
クラスの操作 |
| «JavaPackage» |
パッケージ |
| «JavaParameter» |
入力パラメーター、出力パラメーター、または戻りパラメーター |
UML から Java への変換プロファイルには、
UML から Java への変換が、
配列およびコレクション用の Java コードを生成するために使用するステレオタイプも含まれています。
これらのステレオタイプは、変換の実行時に自動的に適用されます。
これらのステレオタイプを適用しても、モデリングのアクティビティーに影響はありません。
以下の表は、変換がどのように Java コードを生成するかを指定するために適用可能なステレオタイプをリストしたものです。
注: «JavaArray» ステレオタイプまたは «JavaCollection» ステレオタイプを適用すると、
変換構成に指定したデフォルトのコレクション情報はオーバーライドされます。
| ステレオタイプ |
適用可能な UML 要素 |
プロパティー |
プロパティーの記述および値 |
変換の結果 |
| «JavaArray» |
プロパティーまたはパラメーター。 |
dimensions |
配列のサイズを指定します。
デフォルト値は 1 です。
|
任意の次元の Java 配列。
例えば、int[][] という形式の配列を生成するには、プロパティーまたはパラメーターに «JavaArray» ステレオタイプを適用して、属性の型をプリミティブ型 int に設定し、次元値を 2 に設定します。
|
| «JavaCollection» |
Set または List など、Java コレクション・クラスを表すプロパティーまたはパラメーター。 |
collectionType |
生成する Java コレクションの完全修飾名に設定します。
デフォルト値は java.util.Collection です。
|
Set または List などの Java コレクション・クラス。
例えば、Hashmap<String, Object> 型のマップを生成するには、UML のプロパティーまたはパラメーターに «JavaCollection» ステレオタイプを適用して、collectionType を java.util.Hashmap に、keyType を java.lang.String に設定します。
|
| keyType |
java.util.Maps で使用されるキー・タイプの完全修飾名に設定します。
collectionType プロパティーが Java のマップ・クラスでない場合は、値を指定しないでください。
デフォルト値はありません。
|