セッション・サービスの使用
com.ibm.hats.runtime.services.SessionService インターフェースを実装するセッション・サービスは、ZIETrans リッチ・クライアント・アプリケーションのインスタンスと対話するためのメソッドを提供します。実行中の 各アプリケーション・インスタンス (変換ビュー・インスタンスなど) には セッション・サービスが関連付けられています。変換ビュー・インスタンスおよびセッション・サービスとの間には、1 対 1 のマッピングが存在します。
セッション・サービスの完全なコレクションを 取得するためのコード例を以下に示します。
IServiceManager serviceManager =
RcpRuntimePlugin.getDefault().getServiceManager();
Collection sessionServices =
serviceManager.retrieveServiceEntries( ServiceType.SESSION );
Iterator itSessionServices =
sessionServices.iterator();
while ( itSessionServices.hasNext() )
{
ISessionService aSessionService =
(ISessionService) itSessionServices.next();
// Your custom code goes here
}
表 1 に、アプリケーションのインスタンスである ISessionService オブジェクトによって呼び出すことができるメソッドを示します。
変換ビューに関連する ISessionService オブジェクトは、ビューで getSessionService() メソッドを呼び出すことで取得できます。このメソッドは、ITransformationView インターフェースによって提供されます。このインターフェースは、基本 TransformationView クラスによってインプリメントされます。
メソッド | 説明 |
---|---|
addPresentationListener (IPresentationListener) |
指定されたプレゼンテーション・リスナーをリストに 追加します。プレゼンテーションが更新されると、 リスナーに通知されます。 |
addSessionServiceListener (ISessionServiceListener) |
指定されたセッション・サービス・リスナーをリストに 追加します。セッションの状態が変化したとき、 またはコマンドが送信されるときには、リスナーに通知されます。 |
canSendCommand(String) | 現在のセッション・サービスの状態で 指定のコマンドを送信できる場合は true のブール値を戻します。 それ以外の場合は false のブール値を戻します。 |
disconnect() | ホスト・セッションを切断します。このメソッドは、アプリケーション・キーパッド上の「切断」ボタンによって呼び出されます。関連付けられている変換ビューは、このメソッドではクローズされません。このメソッドは、セッション・サービスが既にコマンドを処理している場合には、何もアクションを実行しません。 |
getApplication() | このセッション・サービス・インスタンスに 関連付けられたアプリケーションを戻します。このメソッドによって 戻されたオブジェクトは情報の取得のみに使用してください。このオブジェクトを使用して 設定を変更しないでください。 |
getApplicationId() | このセッション・サービスに関連付けられた アプリケーションのアプリケーション ID (プラグイン ID など) を戻します。 |
getApplicationService() | このセッション・サービス・インスタンスに 関連付けられたアプリケーション・サービスを戻します。 |
getClientId() | このセッション・サービス・インスタンスに 関連付けられたクライアント ID を戻します。 |
getCurrentState() | このセッション・サービス・インスタンスの現在の状態を戻します。 |
getHostScreen() | このセッション・サービス・インスタンスに 関連付けられたホスト画面を戻します。これは、ZIETrans ランタイムによって処理された最後のホスト画面を戻します。戻り値は必ずしも現在のホスト画面とは限りません。 |
getHostScreenDataAccessService() | フォーム上のホスト・フィールド関連制御の値を含むモデルを戻します。このメソッドは、変換がビュー上で現在表示されている場合のみ有効です。 |
getLocale() | メッセージの表示に使用するロケールを戻します。プロジェクト設定エディターでアプリケーションのクライアント・ロケール設定を変更した場合、 このロケールは Eclipse 環境のロケールと異なる場合があります。 |
getMacroPromptDataAccessService() | モデル・データへのアクセスに使用するサービスを戻します。 |
getParameterDataAccessService() | フォーム上の非ホスト・フィールド関連制御の値を含むモデルを戻します。このサービスは、グローバル変数値など、その他のフォーム値を設定および取得するために使用されます。これらの値は、現行フォームが送信されると ZIETrans ランタイムに渡されます。 |
getRuntimeService() | ランタイム・サービスを戻します。 |
getServiceManager() | このサービスをインスタンス化したサービス・マネージャーを戻します。 |
getSession() | このセッション・サービス・インスタンスに 関連付けられたホスト・セッションを戻します。 |
getSessionServiceState() | セッション・サービスの状態を状態オブジェクトとして戻します。 |
getViewId() | 変換ビューのインスタンス ID を戻します。 |
isAsyncUpdateEnabled() | 非同期更新が使用可能な場合は true のブール値を戻します。 それ以外の場合は false のブール値を戻します。 |
isCommandSupported(String) | 指定されたコマンドが サポートされる場合は true のブール値を戻します。 それ以外の場合は false のブール値を戻します。 |
playMacro(String) | 指定したマクロを実行します。 |
playMacro(String, Properties) | 指定したマクロを実行し、マクロで定義されているすべてのプロンプトに値を引き渡します。 |
removePresentationListener (IPresentationListener) |
指定されたプレゼンテーション・リスナーを リストから除去します。 |
removeSessionServiceListener (ISessionServiceListener) |
指定されたセッション・サービス・リスナーを リストから除去します。 |
sendCommand(String) | 指定したコマンドを送信します。一般的なコマンドは次のとおりです: [pf1]、[pf2]、[enter]、[fldext]。 注: コマンドの前後の大括弧は必須です。
|
sendCommand(String, Properties) | String によって指定されたコマンドを 関連プロパティーと共に送信します。コマンドは、[enter] などの Host On-Demand ニーモニックか、または default などの ZIETrans コマンドです。追加のパラメーターを指定できます。これらのパラメーターは、 実行依頼される要求に組み込まれます。これらのパラメーターにより、 ホスト入力フィールドなどの SDO モデルまたは グローバル変数から収集される同じ名前のパラメーターが オーバーライドされます。オーバーライド・パラメーターの値は 型 String[] でなければなりません。 |
sendContinue() | continue コマンドを送信します。このコマンドを送信して、「コンポジットを表示」アクションまたはマクロ・プロンプト・アクションから続行する必要があります。 |
sendEnter() | Enter キー・コマンドを送信します。 |
sendF1() - 管理 - sendF24() | 各 PF キー・コマンドを送信します。 |
sendRefresh() | 更新コマンドを送信します。 |
sendShowDefault() | デフォルト表示コマンドを送信します。 |
start(Properties) | 指定された接続およびグローバル変数オーバーライドを使用して セッション・サービスを開始します。 |
stop() | セッション・サービスを停止します。 |
updatePresentation(IPresentable) | 指定されたプレゼンテーション可能オブジェクトで プレゼンテーション (一般には変換ビュー) を更新します。 |