jp.terasoluna.fw.batch.core
クラス StandardBLogicExecutor

java.lang.Object
  上位を拡張 jp.terasoluna.fw.batch.core.StandardBLogicExecutor
すべての実装されたインタフェース:
BLogicExecutor

public class StandardBLogicExecutor
extends java.lang.Object
implements BLogicExecutor

ビジネスロジック実行クラスの標準実装。

このクラスでは、アプリケーションのビジネスロジック(BLogic インタフェースを実装したクラス)を 起動し、起動結果をジョブステータスへ反映す る。

ビジネスロジックの処理結果は、このクラスの属性に設定されているビジネスロジ ック処理結果ハンドラによってジョブステータスに反映される。ビジネスロジック処 理結果ハンドラは、ビジネスロジックが返却したリターンコードに関わらず起動され る。つまり、ビジネスロジックが正常続行(NORMAL_CONTINUE)を返却し た場合でも、異常終了(ERROR_END)を返却した場合であっても処理結果 ハンドラが呼ばれる。

ビジネスロジックで例外が発生した場合には、このクラスの属性に設定されている 例外ハンドラの設定にしたがって例外ハンドラが起動される。 また、ビジネスロジックからスローされた例外は、例外ハンドラに渡される前にフレ ームワークのビジネスロジック例外クラス(BLogicException)によって、 ラップされる。

例外が発生した場合には、ビジネスロジック処理結果ハンドラは呼ばれないことに 留意すること。

このクラスではトランザクションに関わる処理は行われない。

関連項目:
BLogic, BLogicResultHandler, JobExceptionHandler

フィールドの概要
private  BLogic<java.lang.Object,JobContext> blogic
          ビジネスロジック。
private  BLogicResultHandler bLogicResultHandler
          ビジネスロジック結果処理ハンドラ。
private  JobExceptionHandler defaultJobExceptionHandler
          デフォルト例外ハンドラ。
private  java.util.LinkedHashMap<JobException,JobExceptionHandler> exceptionHandlerMap
          例外ハンドラを格納したMap。
private static org.apache.commons.logging.Log log
          ログインスタンス。
private  ThrowableHandler throwableHandler
          Throwableハンドラ。
 
コンストラクタの概要
StandardBLogicExecutor()
           
 
メソッドの概要
 void executeBLogic(java.lang.Object blogicInputData, JobContext jobContext, JobStatus jobStatus, java.util.List<java.util.LinkedHashMap<java.lang.String,java.lang.Object>> batchUpdateMapList)
          ビジネスロジックを実行し、ビジネスロジック実行結果の処理を行う。
 void setBlogic(BLogic<java.lang.Object,JobContext> blogic)
          ビジネスロジックを設定する。
 void setBlogicResultHandler(BLogicResultHandler bLogicResultHandler)
          ジョブ結果ハンドラを設定する。
 void setDefaultJobExceptionHandler(JobExceptionHandler defaultJobExceptionHandler)
          デフォルト例外ハンドラを設定する。
 void setExceptionHandlerMap(java.util.LinkedHashMap<JobException,JobExceptionHandler> exceptionHandlerMap)
          例外ハンドラを格納したMapを設定する。
 void setThrowableHandler(ThrowableHandler throwableHandler)
          Throwableハンドラを設定する。
private  void writeEndLog(JobStatus jobStatus, BLogicResult blogicResult)
          BLogicExecutorの結果ログを出力する。
private  void writeStartLog(JobStatus jobStatus)
          BLogicExecutorの開始ログを出力する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

log

private static final org.apache.commons.logging.Log log
ログインスタンス。


bLogicResultHandler

private BLogicResultHandler bLogicResultHandler
ビジネスロジック結果処理ハンドラ。


blogic

private BLogic<java.lang.Object,JobContext> blogic
ビジネスロジック。


exceptionHandlerMap

private java.util.LinkedHashMap<JobException,JobExceptionHandler> exceptionHandlerMap
例外ハンドラを格納したMap。


defaultJobExceptionHandler

private JobExceptionHandler defaultJobExceptionHandler
デフォルト例外ハンドラ。


throwableHandler

private ThrowableHandler throwableHandler
Throwableハンドラ。

コンストラクタの詳細

StandardBLogicExecutor

public StandardBLogicExecutor()
メソッドの詳細

executeBLogic

public void executeBLogic(java.lang.Object blogicInputData,
                          JobContext jobContext,
                          JobStatus jobStatus,
                          java.util.List<java.util.LinkedHashMap<java.lang.String,java.lang.Object>> batchUpdateMapList)
ビジネスロジックを実行し、ビジネスロジック実行結果の処理を行う。

定義:
インタフェース BLogicExecutor 内の executeBLogic
パラメータ:
blogicInputData - 処理対象データ
jobContext - ジョブコンテキスト
jobStatus - ジョブ処理状況
batchUpdateMapList - バッチ更新リスト

setBlogicResultHandler

public void setBlogicResultHandler(BLogicResultHandler bLogicResultHandler)
ジョブ結果ハンドラを設定する。

パラメータ:
bLogicResultHandler - ジョブ結果ハンドラ

setBlogic

public void setBlogic(BLogic<java.lang.Object,JobContext> blogic)
ビジネスロジックを設定する。

パラメータ:
blogic - ビジネスロジック

setExceptionHandlerMap

public void setExceptionHandlerMap(java.util.LinkedHashMap<JobException,JobExceptionHandler> exceptionHandlerMap)
例外ハンドラを格納したMapを設定する。

パラメータ:
exceptionHandlerMap - 例外ハンドラを格納したMap

setDefaultJobExceptionHandler

public void setDefaultJobExceptionHandler(JobExceptionHandler defaultJobExceptionHandler)
デフォルト例外ハンドラを設定する。

パラメータ:
defaultJobExceptionHandler - デフォルト例外ハンドラ

writeStartLog

private void writeStartLog(JobStatus jobStatus)
BLogicExecutorの開始ログを出力する。

パラメータ:
jobStatus - ジョブステータス

writeEndLog

private void writeEndLog(JobStatus jobStatus,
                         BLogicResult blogicResult)
BLogicExecutorの結果ログを出力する。

パラメータ:
jobStatus - ジョブステータス
blogicResult - ビジネスロジック実行結果

setThrowableHandler

public void setThrowableHandler(ThrowableHandler throwableHandler)
Throwableハンドラを設定する。

パラメータ:
throwableHandler - Throwableハンドラ