public class BasicProcessStopHandler extends java.lang.Object implements ProcessStopHandler, Initializable
LoopHandlerやProcessResidentHandlerの後続ハンドラに設定することにより、
 処理中に安全にプロセスを停止することが可能となる。
 
 なお、プロセスを停止するためにProcessStopを送出するため、障害通知ログが出力されプロセスは異常終了する。
 異常終了する際に終了コードは、setExitCode(int)によって設定することが出来る。
 終了コードの設定を省略した場合のデフォルト動作として終了コードは1となる。
 また、未コミットのトランザクションは全てロールバックされることに注意すること。
 
 ※処理を異常終了するかどうかは、前段に設定されたハンドラによって決定される。
 
 処理を停止するか否かのチェックは、リクエストテーブルにて行う。
 本ハンドラが使用するリクエストテーブルの定義情報を下記に示す。
 
 
 -----------------------------+----------------------------------------------------------
 カラム名                     | 説明
 -----------------------------+----------------------------------------------------------
 リクエストID                 | プロセスを特定するためのリクエストID
 処理停止フラグ               | 処理を停止するか否かの情報
                              | 本フラグの値が'1'の場合に処理を停止する。
                              |
                              | 本フラグの値は、自動的に'0'には変更されないため再実行する際には、
                              | 手動で'0'に変更する必要がある。
 -----------------------------+----------------------------------------------------------
 ProcessStopHandler.ProcessStop| Constructor and Description | 
|---|
BasicProcessStopHandler()  | 
| Modifier and Type | Method and Description | 
|---|---|
java.lang.Object | 
handle(java.lang.Object o,
      ExecutionContext context)
入力データに対する処理を実行する。 
 | 
void | 
initialize()
初期化処理を行う。 
 | 
boolean | 
isProcessStop(java.lang.String requestId)
プロセス停止可否を判定する。 
 | 
void | 
setCheckInterval(int checkInterval)
チェック間隔( 
handle(Object, ExecutionContext)が
 何回呼び出されるごとに停止フラグを確認するか?)を設定する。
  | 
void | 
setDbTransactionManager(SimpleDbTransactionManager dbTransactionManager)
トランザクションマネージャ( 
SimpleDbTransactionManager)を設定する。
 
 本ハンドラは、ここで設定されたトランザクションマネージャを使用してデータベースアクセスを行う。 | 
void | 
setExitCode(int exitCode)
終了コードを設定する。
 
 終了コードの設定がない場合、デフォルトで 
Result.InternalError#STATUS_CODEが使用される。 | 
void | 
setProcessHaltColumnName(java.lang.String processHaltColumnName)
プロセス停止フラグが格納されるカラムの物理名を設定する。 
 | 
void | 
setRequestIdColumnName(java.lang.String requestIdColumnName)
プロセスを特定するためのリクエストIDが格納されるカラムの物理名を設定する。 
 | 
void | 
setTableName(java.lang.String tableName)
プロセス停止可否のチェックを行うテーブルの物理名を設定する。 
 | 
public java.lang.Object handle(java.lang.Object o,
                               ExecutionContext context)
public boolean isProcessStop(java.lang.String requestId)
isProcessStop in interface ProcessStopHandlerrequestId - リクエストIDpublic void setCheckInterval(int checkInterval)
handle(Object, ExecutionContext)が
 何回呼び出されるごとに停止フラグを確認するか?)を設定する。
 setCheckInterval in interface ProcessStopHandlercheckInterval - チェック間隔(0以下の値が設定された場合は1)public void setDbTransactionManager(SimpleDbTransactionManager dbTransactionManager)
SimpleDbTransactionManager)を設定する。
 
 本ハンドラは、ここで設定されたトランザクションマネージャを使用してデータベースアクセスを行う。dbTransactionManager - トランザクションマネージャpublic void initialize()
initialize in interface Initializablepublic void setTableName(java.lang.String tableName)
tableName - テーブル物理名public void setRequestIdColumnName(java.lang.String requestIdColumnName)
requestIdColumnName - リクエストIDカラムの物理名public void setProcessHaltColumnName(java.lang.String processHaltColumnName)
processHaltColumnName - プロセス停止カラムフラグの物理名public void setExitCode(int exitCode)
Result.InternalError#STATUS_CODEが使用される。setExitCode in interface ProcessStopHandlerexitCode - 終了コード