クラス StepExecutionSimpleCompletionPolicy
java.lang.ObjectSE
org.springframework.batch.core.resource.StepExecutionSimpleCompletionPolicy
- 実装されているすべてのインターフェース:
StepExecutionListener、StepListener、CompletionPolicy
public class StepExecutionSimpleCompletionPolicy
extends ObjectSE
implements StepExecutionListener, CompletionPolicy
ステップの開始をリッスンすることにより、JobParameters からコミット間隔を取得する CompletionPolicy。CompletionPolicy を使用できる場所であればどこでも(通常はステップのチャンクレベルで)使用し、StepExecutionListener として周囲のステップに注入します。N.B. ステップが開始された後にのみ、完了ポリシーが使用可能になります。
遅延バインディング式(#{jobParameters['commit.interval']} など)である commit-interval を使用してチャンクを宣言する方が簡単で、おそらく望ましいでしょう。その機能は Spring Batch 2.1.7 から利用できます。
- 作成者:
- Dave Syer, Mahmoud Ben Hassine
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidbeforeStep(StepExecution stepExecution) JobParametersから取得したコミット間隔でSimpleCompletionPolicyをセットアップします。booleanisComplete(RepeatContext context) コールバックが完了するのを待たずに、ポリシーが内部状態に従って完了を通知できるようにします。booleanisComplete(RepeatContext context, RepeatStatus result) コールバックからの最新の結果を考慮して、バッチが完了したかどうかを判断します。voidsetKeyName(StringSE keyName) コミット間隔を含むJobParametersの Long 値のキー名のパブリック setter。start(RepeatContext parent) バッチを実行するための新しいコンテキストを作成します。toString()設定されている場合はラップされたCompletionPolicyにデリゲートし、そうでない場合はsetKeyName(String)の値を返します。voidupdate(RepeatContext context) 実装に現在のバッチの状態を更新する機会を与えます。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース org.springframework.batch.core.StepExecutionListener から継承されたメソッド
afterStep
コンストラクターの詳細
StepExecutionSimpleCompletionPolicy
public StepExecutionSimpleCompletionPolicy()
メソッドの詳細
setKeyName
コミット間隔を含むJobParametersの Long 値のキー名のパブリック setter。デフォルトは "commit.interval" です。- パラメーター:
keyName- 設定する keyName
beforeStep
JobParametersから取得したコミット間隔でSimpleCompletionPolicyを設定します。指定されたキー名を持つ Long パラメーターがある場合は、このパラメーターの intValue が使用されます。ない場合は例外がスローされます。- 次で指定:
- インターフェース
StepExecutionListenerのbeforeStep - パラメーター:
stepExecution-StepExecutionのインスタンス。- 関連事項:
isComplete
インターフェースからコピーされた説明:CompletionPolicyコールバックからの最新の結果を考慮して、バッチが完了したかどうかを判断します。このメソッドが true を返す場合、CompletionPolicy.isComplete(RepeatContext)も同じである必要があります(ただし、必ずしもその逆ではないため、ここでの答えは結果に依存するため)。- 次で指定:
- インターフェース
CompletionPolicyのisComplete - パラメーター:
context- 現在のバッチコンテキスト。result- 最新のバッチアイテム処理の結果。- 戻り値:
- コミット間隔に達した場合、または結果が完了を示している場合は true
- 関連事項:
isComplete
インターフェースからコピーされた説明:CompletionPolicyコールバックが完了するのを待たずに、ポリシーが内部状態に従って完了を通知できるようにします。- 次で指定:
- インターフェース
CompletionPolicyのisComplete - パラメーター:
context- 現在のバッチコンテキスト。- 戻り値:
- コミット間隔に達した場合
- 関連事項:
start
インターフェースからコピーされた説明:CompletionPolicyバッチを実行するための新しいコンテキストを作成します。NB 実装は、このメソッドから親を返すべきではありません。ポリシーの特定のニーズを満たすために、新しいコンテキストを作成する必要があります。これを行う最善の方法は、既存の実装をオーバーライドし、RepeatContextを使用して属性に状態を格納することです。- 次で指定:
- インターフェース
CompletionPolicyのstart - パラメーター:
parent- 進行中の場合は現在のコンテキスト。- 戻り値:
- 新しい
RepeatContext - 関連事項:
update
インターフェースからコピーされた説明:CompletionPolicy実装に現在のバッチの状態を更新する機会を与えます。コールバックが起動された後、コールバックごとに 1 回呼び出されますが、必ずしも完了した後ではありません(バッチが非同期の場合)。- 次で指定:
- インターフェース
CompletionPolicyのupdate - パラメーター:
context- start によって返される値。- 関連事項:
toString
設定されている場合はラップされたCompletionPolicyにデリゲートし、そうでない場合はsetKeyName(String)の値を返します。