Package nablarch.fw.action
Class BatchActionBase<D>
java.lang.Object
nablarch.core.db.support.DbAccessSupport
nablarch.fw.action.BatchActionBase<D>
- Type Parameters:
D- 本タスクが処理する入力データの型
- All Implemented Interfaces:
ExecutionHandlerCallback<CommandLine,,Result> TransactionEventCallback<D>
- Direct Known Subclasses:
BatchAction,FileBatchActionBase
public abstract class BatchActionBase<D>
extends DbAccessSupport
implements ExecutionHandlerCallback<CommandLine,Result>, TransactionEventCallback<D>
バッチ処理方式において、業務処理が継承する抽象基底クラス。
このクラスには、
ExecutionHandlerCallbackインタフェースに関するNOP実装が与えられており、
必要に応じてオーバーライドできるようになっている。- Author:
- Iwauo Tajima
-
Nested Class Summary
Nested classes/interfaces inherited from interface nablarch.fw.TransactionEventCallback
TransactionEventCallback.Provider<TData> -
Field Summary
Fields inherited from interface nablarch.fw.TransactionEventCallback
REQUEST_DATA_REQUEST_SCOPE_KEY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiderror(Throwable error, ExecutionContext context) 実行時例外/エラーの発生によって本処理が終了した場合に一度だけ実行される。final voiderrorInExecution(Throwable error, ExecutionContext context) 実行制御ハンドラが後続処理を実行した後、 後続のハンドラでエラーが発生した場合に呼ばれる。protected voidinitialize(CommandLine command, ExecutionContext context) 実行管理ハンドラ(nablarch.fw.handler.ExecutionHandler<TData,)の本処理開始前に一度だけ実行される。TResult, TSelf extends nablarch.fw.handler.ExecutionHandler> final voidpostExecution(Result result, ExecutionContext context) 実行制御ハンドラが後続処理を実行した後、正常、異常終了を問わず 処理が全て完了した直後に呼ばれる。 すなわち、正常終了時には、 の後、異常終了時にはExecutionHandlerCallback.errorInExecution(Throwable, ExecutionContext)の後で本メソッドが呼ばれる。final voidpreExecution(CommandLine commandLine, ExecutionContext context) 実行制御ハンドラが後続処理を実行する前にコールバックされる。 一括処理実行前に、なんらかの初期処理を行う場合に実装する。protected voidterminate(Result result, ExecutionContext context) 本処理が終了した場合に一度だけ実行される。 (エラー終了した場合でも実行される。)voidtransactionAbnormalEnd(Throwable e, D data, ExecutionContext ctx) 入力データに対する処理で異常が発生した場合に呼ばれる。protected voidtransactionFailure(D inputData, ExecutionContext context) トランザクション処理が異常終了した場合に実行される。voidtransactionNormalEnd(D data, ExecutionContext ctx) 入力データに対する処理が正常に処理された場合に呼ばれる。protected voidtransactionSuccess(D inputData, ExecutionContext context) トランザクション処理が正常終了した場合に実行される。protected voidwriteErrorLog(Object data, String failureCode, Object... msgOptions) ERRORレベルで障害ログ出力を行う。protected voidwriteFatalLog(Object data, String failureCode, Object... msgOptions) FATALレベルで障害ログ出力を行う。protected voidINFOレベルでログ出力を行う。Methods inherited from class nablarch.core.db.support.DbAccessSupport
countByParameterizedSql, countByStatementSql, getParameterizedSqlStatement, getParameterizedSqlStatement, getSqlCStatement, getSqlPStatement, search
-
Constructor Details
-
BatchActionBase
public BatchActionBase()
-
-
Method Details
-
initialize
実行管理ハンドラ(nablarch.fw.handler.ExecutionHandler<TData,)の本処理開始前に一度だけ実行される。 デフォルトでは何もしない。 必要に応じてオーバライドすること。TResult, TSelf extends nablarch.fw.handler.ExecutionHandler> - Parameters:
command- 起動コマンドラインcontext- 実行コンテキスト
-
error
実行時例外/エラーの発生によって本処理が終了した場合に一度だけ実行される。 デフォルトでは何もしない。 必要に応じてオーバライドすること。- Parameters:
error- 本処理で発生した実行時例外/エラーcontext- 実行コンテキスト
-
terminate
本処理が終了した場合に一度だけ実行される。 (エラー終了した場合でも実行される。) デフォルトでは何もしない。 必要に応じてオーバライドすること。- Parameters:
result- 本処理の実行結果context- 実行コンテキスト
-
transactionSuccess
トランザクション処理が正常終了した場合に実行される。 デフォルトでは何もしない。 必要に応じてオーバライドすること。- Parameters:
inputData- 入力データcontext- 実行コンテキスト
-
transactionFailure
トランザクション処理が異常終了した場合に実行される。 デフォルトでは何もしない。 必要に応じてオーバライドすること。- Parameters:
inputData- 入力データcontext- 実行コンテキスト
-
writeLog
INFOレベルでログ出力を行う。- Parameters:
msgId- メッセージIDmsgOptions- メッセージIDから取得したメッセージに埋め込む値
-
writeErrorLog
ERRORレベルで障害ログ出力を行う。 障害ログは、障害通知ログと障害解析ログの2種類に分けて出力される。- Parameters:
data- 処理対象データfailureCode- 障害コード(メッセージID)msgOptions- 障害コードから取得したメッセージに埋め込む値
-
writeFatalLog
FATALレベルで障害ログ出力を行う。 障害ログは、障害通知ログと障害解析ログの2種類に分けて出力される。- Parameters:
data- 処理対象データfailureCode- 障害コード(メッセージID)msgOptions- 障害コードから取得したメッセージに埋め込む値
-
preExecution
@Published(tag="architect") public final void preExecution(CommandLine commandLine, ExecutionContext context) Description copied from interface:ExecutionHandlerCallback実行制御ハンドラが後続処理を実行する前にコールバックされる。 一括処理実行前に、なんらかの初期処理を行う場合に実装する。- Specified by:
preExecutionin interfaceExecutionHandlerCallback<CommandLine,Result> - Parameters:
commandLine- 入力データcontext- 実行コンテキスト
-
errorInExecution
@Published(tag="architect") public final void errorInExecution(Throwable error, ExecutionContext context) Description copied from interface:ExecutionHandlerCallback実行制御ハンドラが後続処理を実行した後、 後続のハンドラでエラーが発生した場合に呼ばれる。- Specified by:
errorInExecutionin interfaceExecutionHandlerCallback<CommandLine,Result> - Parameters:
error- 後続ハンドラの処理中に発生した実行時例外/エラーcontext- 実行コンテキスト
-
postExecution
@Published(tag="architect") public final void postExecution(Result result, ExecutionContext context) Description copied from interface:ExecutionHandlerCallback実行制御ハンドラが後続処理を実行した後、正常、異常終了を問わず 処理が全て完了した直後に呼ばれる。 すなわち、正常終了時には、 の後、異常終了時にはExecutionHandlerCallback.errorInExecution(Throwable, ExecutionContext)の後で本メソッドが呼ばれる。- Specified by:
postExecutionin interfaceExecutionHandlerCallback<CommandLine,Result> - Parameters:
result- ハンドラの戻り値となるオブジェクトcontext- 実行コンテキスト
-
transactionNormalEnd
Description copied from interface:TransactionEventCallback入力データに対する処理が正常に処理された場合に呼ばれる。- Specified by:
transactionNormalEndin interfaceTransactionEventCallback<D>- Parameters:
data- 入力データctx- 実行コンテキスト
-
transactionAbnormalEnd
@Published(tag="architect") public void transactionAbnormalEnd(Throwable e, D data, ExecutionContext ctx) Description copied from interface:TransactionEventCallback入力データに対する処理で異常が発生した場合に呼ばれる。- Specified by:
transactionAbnormalEndin interfaceTransactionEventCallback<D>- Parameters:
e- 発生したエラーdata- 入力データctx- 実行コンテキスト
-