本範例包含下列三個轉換:
轉換 |
說明 |
類別至文字 -> 主控台
|
這項轉換接受 UML 類別作為其來源,並將類別的說明(類別的名稱及其屬性和作業,以及作業的參數)寫入「主控台」視圖。
|
類別至文字 -> 檔案
|
這項轉換與「類別至文字主控台」轉換相同,但是它是將結果寫入檔案而非「主控台」視圖。
|
狀態至 JSP
|
這項轉換接受狀態機作為其來源,並針對具有 ScreenFlow 設定檔中的造型之每一個狀態,都產生一個 JSP 頁面。
|
如果要瞭解轉換的建構方式,您應執行轉換並探索程式碼。當您閱讀程式碼時,
您應遵循下列準則:
-
首先查看實作規則的 Java 類別。這個類別出現在其名稱的結尾為
.rules 的套件中。
-
一組規則集合併成一或多個轉換。這些轉換是由其名稱結尾為
.transforms 之套件中的 Java 類別實作。您應先閱讀 transform 類別的程式碼,然後閱讀 root transforms 的程式碼。
-
最後,請查看外掛程式 Manifest 檔
plugin.xml 以及 TransformationProvider 類別的程式碼,以瞭解轉換如何連接至「轉換服務」。
類別至文字轉換
這項轉換接受 UML 類別、套件或模型作為其來源,並將類別的名稱及其屬性和作業以及作業的參數寫入「主控台」視圖或檔案。
如果您選擇以某個模型或套件作為來源,轉換會寫入該模型或套件所包含的所有類別的詳細資料。
這項轉換有兩種變式:
-
類別至文字 -> 主控台:這項轉換會將輸出寫入「主控台」視圖,它不需要目標。
本轉換範例展示如何執行下列事項:
-
建立簡式規則,並將它們合併成一或多個轉換
-
建立轉換提供者
-
在外掛程式 Manifest 檔
plugin.xml 中說明轉換及其提供者
- 類別至文字 -> 檔案:這項轉換會將輸出寫入檔案,並需要專案作為其目標。依預設,它會在您指定的專案中,在
ClassToTextOutput 資料夾中建立名為 class2text.txt 的檔案。您可以使用目標檔名 這個轉換內容來變更檔案的預設名稱。
本轉換範例展示如何執行下列的其他事項:
-
在外掛程式 Manifest 檔
plugin.xml 中說明轉換內容
-
操作規則內的轉換內容
狀態至 JSP 轉換
這項轉換接受狀態機中的 UML 狀態作為其來源,並利用 Java Emitter Templates (JET) 產生 JSP 檔格式的網頁。如果您選擇以某個狀態機或區域作為來源,這項轉換會針對狀態機中的每一個狀態(具有套用到其中的 ScreenFlow 設定檔中的造型)都產生一個 JSP 檔。
本範例展示如何執行下列事項:
-
使用造型和關鍵字來選擇性地觸發規則
-
合併 JET 功能和轉換來產生文字
如果要準備來源狀態機進行轉換,您必須將 ScreenFlow 設定檔套用到包含該狀態機的 UML 模型,並將 ScrrenFlow 設定檔中的造型套用到其狀態來標示狀態機。
ScreenFlow 設定檔包含四個造型:表單 (form) 、編輯表單 (editform) 、選擇清單 (selectlist) 和顯示 (display) 。
這些造型決定所產生頁面之動態內容的顯示樣式。本範例使用造型來判斷顯示樣式是可編輯表單或可選取清單等等。如果您將多個造型套用到某個狀態,則這項轉換僅考量第一個造型。
本範例也使用造型的內容來判斷透過 JSP 頁面所交換的資料。
這項轉換會產生對應於某個狀態的 JSP 頁面,
不過前提是對該狀態套用了四種造型之一。
如果 JSP 檔已存在,則轉換在執行時不會加以覆寫。您可以變更轉換是否覆寫檔案,方法為將覆寫輸出檔這個轉換內容的值設為 true 。
ScreenFlow 設定檔
下表顯示 ScreenFlow 設定檔中的造型以及它們的內容。表格中的值僅供說明之用。
造型 |
基礎類別 |
內容:值 |
說明 |
顯示
<<顯示>> |
狀態 |
實體:連絡人
欄位:姓名、地址 |
指出產生的 JSP 頁面顯示連絡人詳細資料:姓名與地址 |
編輯表單
<<編輯表單>> |
狀態 |
實體:連絡人
欄位:姓名、地址 |
指出產生的 JSP 頁面包含可編輯的表單,使用者可以在其中輸入或編輯連絡人詳細資料:姓名與地址 |
表單
<<表單>> |
狀態 |
欄位:使用者名稱 |
指出產生的 JSP 頁面包含可輸入使用者名稱的表單 |
選取清單
<<選取清單>> |
狀態 |
實體:連絡人
欄位:姓名、地址
選取欄位:ID |
指示產生的 JSP 頁面包含一份連絡人清單,可用來選取具有特定 ID 的連絡人 |
|