モデル - テキスト間変換サンプルの詳細

このサンプルには、以下の 3 つの変換が含まれています。
変換 説明
クラス - テキスト間 > コンソール この変換は、 統一モデリング言語 (UML) クラスをソースとして受け入れ、 クラスの名前、属性、操作、 および操作のパラメーターを含むクラスの説明を 「コンソール」ビューに書き込みます。
クラス - テキスト間 > ファイル この変換は、 クラス - テキスト間コンソールの変換と同一ですが、 「コンソール」ビューではなく、ファイルに結果を書き込みます。
状態 - JSP 間 この変換は、状態マシンをソースとして受け入れ、 ステレオタイプを持つ各状態ごとの JavaServer Pages (JSP) を、ScreenFlow プロファイル から生成します。
変換の構成を理解するには、変換を実行して、そのソース・コードを検討することをお勧めします。ソース・コードを読み取る時は、以下のガイドラインに従ってください。
  • まず始めに、 規則を実装する Java™ クラスを確認します。 名前が .rules で終わるパッケージ内に、クラスが表示されます。
  • 一連の規則が、1 つ以上の変換に結合されます。名前が transformations で終わる パッケージの Java クラスによって、変換が実装されます。 始めに変換クラスのコードを読み取り、 その次にルート変換のコードを読み取ることをお勧めします。
  • 最後に、プラグイン・マニフェスト・ファイル (plugin.xml)、 および TransformationProvider クラスのコードを確認して、 変換がどのように Transformation Service と接続しているのかを理解してください。

クラス - テキスト間変換

この変換は UML クラス、パッケージ、またはモデルをソースとして受け入れ、 クラスの名前、属性、操作、および操作のパラメーターを、 「コンソール」ビューまたはファイルのいずれかに書き込みます。 モデルまたはパッケージをソースとして選択した場合、 この変換は、モデルまたはパッケージに含まれるすべてのクラスの詳細を書き込みます。
このタスクについて
この変換には、以下の 2 つのバリエーションがあります。
  1. クラス - テキスト間 >コンソール: この変換は、出力を 「コンソール」ビューに書き込みます。ターゲットを必要としません。 このサンプル変換は、以下のことを行う方法を示します。
    • 単純ルールを作成し、それらを 1 つ以上の変換に結合する。
    • 変換プロバイダーを作成する。
    • 変換およびそのプロバイダーについて、プラグイン・マニフェスト・ファイル plugin.xml に記述する。
  2. クラス - テキスト間 > ファイル: この変換は、出力をファイルに書き込みます。 ターゲットとして、プロジェクトが必要になります。デフォルトでは、 指定したプロジェクトの ClassToTextOutput フォルダー 内に、class2text.txt という名前のファイルが作成されます。 変換プロパティー の「ターゲット・ファイル名」を使用して、ファイルのデフォルト名を変更することができます。 このサンプル変換は、さらに以下のことを行う方法についても示しています。
    • 変換プロパティーをプラグイン・マニフェスト・ファイル plugin.xml に記述する。
    • 規則内で変換プロパティーを操作する。

状態 - JSP 間変換

この変換は、状態マシンの UML 状態をソースとして 受け入れ、Java エミッター・ テンプレート (JET) を使用して、JSP ファイル形式で Web ページを生成します。 状態マシンまたは領域をソースとして選択した場合、 この変換は、適用されている ScreenFlow プロファイルから、 状態マシンまたは領域内のステレオタイプを持つ状態ごとに、 JSP ファイルを生成します。
このタスクについて

このサンプル変換は、以下のことを行う方法を示します。

  • ステレオタイプおよびキーワードを使用して、規則を選択的にトリガーする。
  • JET 機能および変換を結合してテキストを生成する。

変換のためのソースとなる状態マシンを作成するには、状態マシンを含む UML モデルに ScreenFlow プロファイルを適用し、ScreenFlow プロファイルのステレオタイプをその状態に適用することで、状態マシンをマークアップする必要があります。ScreenFlow プロファイルには、form、editform、selectlist、および display の、4 つのステレオタイプが含まれます。これらのステレオタイプは、生成されたページの動的コンテンツの表示スタイルを決定します。 サンプルは、ステレオタイプを使用して、表示スタイルが編集可能なフォーム、選択可能なリストなどを表示するかどうかを決定します。状態に複数のステレオタイプを適用すると、変換は最初のステレオタイプしか考慮しません。

サンプルは、JSP ページを介して交換されるデータの判別にも、ステレオタイプのプロパティーを使用します。 変換は、4 つのステレオタイプのうちの 1 つが状態に適用されている場合のみ、状態に対応する JSP ページを生成します。 JSP ファイルが既に存在する場合、変換は実行中にそれらを上書きしません。変換がファイルを上書きするかどうかは、変換プロパティーの値「出力ファイルに上書き (Overwrite Output Files)」を true に設定することで変更できます。

ScreenFlow プロファイル

次の表には、ScreenFlow プロファイルのステレオタイプおよびそのプロパティーが示されています。表の値は、図示することのみを目的としたものです。

ステレオタイプ 基本クラス プロパティー: 値 説明
«display» 状態 entity:Contact fields:name, address 生成された JSP ページが連絡先の詳細 (名前および住所) を表示することを示します。
«editform» 状態 entity:Contact fields:name, address 生成された JSP ページに、ユーザーが連絡先の詳細を入力および編集することが可能なフォームが含まれることを示します。
«form» 状態 fields:userName 生成された JSP ページに、ユーザーの名前を入力できるフォームが含まれることを示します。
«selectlist» 状態 entity:Contact fields:name, address selectfield:id 生成された JSP ページに、固有の ID で連絡を選択する際に使用可能な連絡先のリストが含まれることを示します。

フィードバック