TSCWatchTimeを利用するサーバアプリケーションの処理の流れとコードの例を示します。斜体で示しているコードは,雛形クラスとして自動生成される部分です。太字で示しているコードは,同期型呼び出しのコードと異なる部分です。
サーバアプリケーションの作成時には,ユーザは,自動生成された雛形クラスABC_TSCimplにTSCユーザオブジェクトのコードを記述します。また,雛形クラスABC_TSCfactimplにTSCユーザオブジェクトファクトリのコードを記述します。
//
// "ABC_TSCimpl.java"
//
import OctetSeqHelper;
import OctetSeqHolder;
import JP.co.Hitachi.soft.TPBroker.TSC.TSCWatchTime;
// import classes used in this implementation, if necessary.
import java.lang.System;
public class ABC_TSCimpl extends ABC_TSCsk
{
// Write class variables, if necessary
public ABC_TSCimpl()
{
// Constructor of implementation.
// Write user own code.
super();
////////
//時間監視の処理
////////
TSCWatchTime watch_time = null;
try
{
//監視時間60秒の時間監視オブジェクト生成
watch_time = new TSCWatchTime(60);
//時間監視の開始
watch_time.start();
//TSCユーザオブジェクトのコンストラクタのコードを記述します。
//引数の数および型を変更できます。
//時間監視の中断
watch_time.stop();
}
catch(TSCSystemException se)
{
//例外処理
System.out.println(se);
throw se;
}
};
public void call(byte[] in_data, OctetSeqHolder out_data)
{
// Operation "call".
// Write user own code.
//ユーザメソッドのコードを記述します。
//メソッドが呼ばれた回数を増加させます。
//(このメソッドの処理は引数の値と無関係です)
m_counter++;
out_data.value = new byte[4];
};
//メソッドが呼ばれた回数
protected int m_counter = 0;
};
同期型呼び出しの場合と同様です。「4.2.2(2) TSCユーザオブジェクトファクトリ(ABC_TSCfactimpl)のコード」を参照してください。
同期型呼び出しの場合と同様です。「4.2.2(3) サービス登録処理の流れ」,「4.2.2(4) サービス登録処理のコード」を参照してください。