UML から Java への変換プロファイルには、ソース・モデル内の要素を検証するために適用できるいくつかのステレオタイプと、変換による Java™ コードの生成方法を制御するいくつかのステレオタイプが含まれています。
重要: ソース・モデルには UML から Java への (非推奨) 変換プロファイルを適用しないでください。代わりに、UML から Java への変換プロファイルを適用してください。
推奨されないプロファイルには、新規ステレオタイプは含まれていません。
UML から Java への変換プロファイルのステレオタイプと同じ名前のステレオタイプが含まれていますが、検証規則が異なります。 推奨されないプロファイルを適用するのは、UML モデルを IBM® Rational® モデリング製品のバージョン 6 リリースからマイグレーションし、過去の検証規則を使用してソース・モデルを自動的に検証する場合のみです。
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 に設定し、dimensions 値を 2 に設定します
|
| «JavaCollection» |
プロパティーまたはパラメーター (Set、List などの Java コレクション・クラスを表します) |
collectionType |
生成する Java コレクションの完全修飾名に設定します デフォルト値は java.util.Collection です
|
Set、または List などの Java コレクション・クラス 例えば、Hashmap<String, Object> 型のマップを生成するには、«JavaCollection» ステレオタイプを UML プロパティーまたはパラメーターに適用し、collectionType を java.util.Hashmap に設定して、keyType を java.lang.String に設定することができます
|
| keyType |
java.util.Maps で使用されるキー型の完全修飾名に設定します collectionType プロパティーが Java マップ・クラスでない場合は、値を指定しないでください
デフォルト値はありません
|
| «JavaRedirect» |
任意の UML タイプ |
リダイレクト |
他の UML タイプにリダイレクト |
UML から Java への変換は、«JavaRedirect» へのすべての参照をリダイレクトされたタイプとして生成します。
これにより、任意のタイプを UML テンプレート・パラメーターに指定して、Java コード生成に使用できます。 |
UML から Java への変換 プロファイルには、Java 総称型のモデリングのために UML 要素に適用できるステレオタイプが含まれます。
以下の表は、Java 総称型のモデリングのためにモデル要素に適用できるステレオタイプの一覧です。| ステレオタイプ |
適用可能な UML 要素 |
| «JavaGenericInstance» |
クラス |
| «JavaWildCard» |
TemplateParameterSubstitution- 非境界ワイルドカードを指定するには、«JavaWildCard» ステレオタイプをテンプレート・バインディングにおける置換の実パラメーターに適用します。
- 境界ワイルドカードを指定するには、非境界ワイルドカードについて説明したのと同じようにステレオタイプを適用し、extends または super ステレオタイプ・プロパティーを設定します。
|
| «JavaTypeParameter» |
TemplateParameter |