17.2.1 ユーザファンクションの流れ
ユーザファンクションの流れを次の図に示します。
- 〈この項の構成〉
(1) EADSが提供するパッケージをインポートする
EADSが提供する次のパッケージをインポートします。
import com.hitachi.software.xeads.func.Function;
import com.hitachi.software.xeads.func.FunctionContext;
(2) ユーザファンクションの初期化処理を実装する
Functionインタフェースのinit()を使用して,EADSサーバの開始時に呼び出される,ユーザファンクションの初期化処理を実装します。
init()の引数FunctionContextを通じて,EADSサーバの情報を取得できます。ただし,init()はEADSサーバ起動時に呼び出されるため,キャッシュのデータは取得できません。
なお,init()の実行時に例外が発生した場合,このユーザファンクションは使用できません。
(3) ユーザファンクションの処理を実装する
Functionインタフェースのexecute()を使用して,EADSクライアントからの要求時にEADSサーバで実行するユーザファンクションの処理を実装します。
execute()の引数FunctionContextを通じて,EADSサーバの情報を取得したり,キャッシュのデータを操作したりできます。
ユーザファンクションで実行できる操作については,「18.2 ユーザファンクションで使用できるAPI」を参照してください。
(4) ユーザファンクションの終了処理を実装する
Functionインタフェースのdestroy()を使用して,EADSサーバの終了時に呼び出される,ユーザファンクションの終了処理を実装します。
destroy()の引数FunctionContextを通じて,EADSサーバの情報を取得できます。
なお,ユーザファンクションの初期化処理に失敗した場合,destroy()は呼び出されません。