コンポーネント・クラスの拡張

ZIETransホスト・コンポーネント・クラスの番号を提供します。ComponentWidget.xml ファイル内にあるすべてのホスト・コンポーネントのクラスは、新規コンポーネント用に作成された .java ファイル内のステートメント public class MyCustomComponent extends Component を既存コンポーネントのクラス名で置換することによって拡張できます。例:
public class MyCustomComponent 
             extends com.ibm.hats.transform.components.CommandLineComponent
注: 双方向コンポーネントは com.ibm.hats.transform.components.BIDI パッケージに保管されています。コンポーネントの双方向クラスの名前は、通常のコンポーネントの名前と同じですが、たとえば com.ibm.hats.transform.components.BIDI.CommandLineComponentBIDI のように最後に "BIDI" が付きます。
各 ZIETrans コンポーネントは、recognize() メソッドでホスト画面のエレメントの認識を実行します。ホスト・コンポーネントを拡張し、必要とする特定の認識タスクを実施するには、次のアプローチのいずれかを使用できます。
  • ZIETrans が提供するコンポーネント・クラスの 1 つを拡張し、コンポーネントの recognize() メソッドをオーバーライドします。recognize() メソッドのどこかで、super.recognize(region, settings); のような呼び出しを追加し、拡張したクラスの recognize() メソッドを呼び出します。設定を変更してからスーパークラスを呼び出すか、スーパークラスによって戻された出力を処理することによって、プロセスを変更します。
  • ZIETrans が提供するコンポーネント・クラスの 1 つを拡張し、コンポーネントの recognize() メソッドをオーバーライドします。スーパークラスの recognize() メソッドを使用する代わりに、その他のいずれかのコンポーネント・クラスの recognize() メソッドを呼び出します。このアプローチは、複数の ZIETrans コンポーネントの特徴を結合した 複合ホスト・コンポーネントを認識する場合に便利です。
「コンポーネントの作成」ウィザードでは、null を返す recognize() メソッドが生成されます。 これは、新規コンポーネントでホスト画面領域が認識されないことを示します。拡張元の ZIETrans コンポーネント (エレメントには正しい ComponentElements がすべて含まれる) と 同じように機能するようにカスタム・コンポーネントを変更するには、.java ファイルから「return null」を削除し、 コンポーネント・コード内のコードを変更します。例:
public ComponentElement[] recognize(LinearScreenRegion region, Properties settings) { 
ComponentElement [] elements = super.recognize(region, settings); 
return elements;
}

ZIETrans は、<ZIETrans:Component> タグの type 属性設定に基づいて、カスタム・コンポーネントのインスタンスを生成します。

ComponentWidget.xmlファイルを編集するには、ZIETrans Toolkit「ナビゲーター」タブをクリックします。ComponentWidget.xml ファイルは、プロジェクトの「ナビゲーター」ビューの下部に表示されます。ComponentWidget.xmlファイルについて詳しくは、コンポーネントまたはウィジェットの登録を参照してください。