Package nablarch.fw.handler
Interface ProcessStopHandler
- All Known Implementing Classes:
BasicProcessStopHandler
処理中のプロセスを停止するためのハンドラ。
本ハンドラは、
LoopHandlerやProcessResidentHandlerの後続ハンドラに設定することにより、
処理中に安全にプロセスを停止することが可能となる。
なお、プロセスを停止するためにProcessStopHandler.ProcessStopを送出するため、障害通知ログが出力されプロセスは異常終了する。
異常終了する際に終了コードは、setExitCode(int)によって設定することが出来る。
終了コードの設定を省略した場合のデフォルト動作として終了コードは1となる。
また、未コミットのトランザクションは全てロールバックされることに注意すること。
※処理を異常終了するかどうかは、前段に設定されたハンドラによって決定される。
処理を停止するか否かのチェックは、リクエストテーブルにて行う。
本ハンドラが使用するリクエストテーブルの定義情報を下記に示す。
-----------------------------+----------------------------------------------------------
カラム名 | 説明
-----------------------------+----------------------------------------------------------
リクエストID | プロセスを特定するためのリクエストID
処理停止フラグ | 処理を停止するか否かの情報
| 本フラグの値が'1'の場合に処理を停止する。
|
| 本フラグの値は、自動的に'0'には変更されないため再実行する際には、
| 手動で'0'に変更する必要がある。
-----------------------------+----------------------------------------------------------
- Author:
- hisaaki sioiri
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classプロセス停止を示す例外。 -
Method Summary
Modifier and TypeMethodDescriptionbooleanisProcessStop(String requestId) voidsetCheckInterval(int checkInterval) チェック間隔(Handler.handle(Object, nablarch.fw.ExecutionContext)が 何回呼び出されるごとに停止フラグを確認するか?)を設定する。voidsetExitCode(int exitCode) 終了コードを設定する。
-
Method Details
-
isProcessStop
-
setCheckInterval
void setCheckInterval(int checkInterval) チェック間隔(Handler.handle(Object, nablarch.fw.ExecutionContext)が 何回呼び出されるごとに停止フラグを確認するか?)を設定する。- Parameters:
checkInterval- チェック間隔(0以下の値が設定された場合は1)
-
setExitCode
void setExitCode(int exitCode) 終了コードを設定する。 終了コードの設定がない場合、デフォルトでInternalError.STATUS_CODEが使用される。- Parameters:
exitCode- 終了コード
-