クラス SimpleStepExecutionSplitter
java.lang.ObjectSE
org.springframework.batch.core.partition.support.SimpleStepExecutionSplitter
- 実装済みのインターフェース一覧:
StepExecutionSplitter,org.springframework.beans.factory.InitializingBean
public class SimpleStepExecutionSplitter
extends ObjectSE
implements StepExecutionSplitter, org.springframework.beans.factory.InitializingBean
Partitioner に委譲して ExecutionContext インスタンスを生成する StepExecutionSplitter の一般的な実装。再始動性を処理し、同じジョブの以前の実行からのステップ実行を識別します。生成された StepExecution インスタンスには、パーティション内で一意に識別する名前があります。名前は、ベース(ターゲットステップの名前)と、Partitioner 識別子から取得したサフィックスから構成され、コロンで区切られます。{step1:partition0, step1:partition1,...}。- 導入:
- 2.0
- 作成者:
- Dave Syer, Mahmoud Ben Hassine
コンストラクター概要
コンストラクターコンストラクター説明設定に便利なデフォルトのコンストラクター。SimpleStepExecutionSplitter(JobRepository jobRepository, boolean allowStartIfComplete, StringSE stepName, Partitioner partitioner) 必須プロパティからSimpleStepExecutionSplitterを構築します。方法の概要
修飾子と型メソッド説明void必須プロパティ(ステップ名、ジョブリポジトリ、パーティショナー)を確認します。リモートで実行されるステップ構成の名前。protected booleanisStartable(StepExecution stepExecution, ExecutionContext context) ステップ実行が開始可能かどうかを確認します。voidsetAllowStartIfComplete(boolean allowStartIfComplete) 実行が完了した場合にパーティションターゲットステップを開始できることを示すフラグ。voidsetJobRepository(JobRepository jobRepository) デリゲートステップ実行の永続性を管理するために使用されるジョブリポジトリ。voidsetPartitioner(Partitioner partitioner) ターゲットステップのステップ実行メタデータを生成するために使用されるPartitioner。voidsetStepName(StringSE stepName) パーティション全体で実行されるターゲットステップの名前。split(StepExecution stepExecution, int gridSize) 提供されたStepExecutionを、同じ親JobExecutionを持つ並列実行可能インスタンスのセットに分割します。
コンストラクターの詳細
SimpleStepExecutionSplitter
public SimpleStepExecutionSplitter()設定に便利なデフォルトのコンストラクター。SimpleStepExecutionSplitter
public SimpleStepExecutionSplitter(JobRepository jobRepository, boolean allowStartIfComplete, StringSE stepName, Partitioner partitioner) 必須プロパティからSimpleStepExecutionSplitterを構築します。- パラメーター:
jobRepository-JobRepositoryallowStartIfComplete- 再起動時の設定を指定するフラグstepName- ターゲットステップ名partitioner- 入力パラメーターの生成に使用するPartitioner
メソッドの詳細
afterPropertiesSet
必須プロパティ(ステップ名、ジョブリポジトリ、パーティショナー)を確認します。- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBeanのafterPropertiesSet - 例外:
ExceptionSE- 関連事項:
InitializingBean.afterPropertiesSet()
setAllowStartIfComplete
public void setAllowStartIfComplete(boolean allowStartIfComplete) 実行が完了した場合にパーティションターゲットステップを開始できることを示すフラグ。デフォルトは、基礎となるステップと同じ値です。これを手動で設定して、基になるステッププロパティをオーバーライドします。- パラメーター:
allowStartIfComplete- 設定する値- 関連事項:
setJobRepository
デリゲートステップ実行の永続性を管理するために使用されるジョブリポジトリ。- パラメーター:
jobRepository- 設定する JobRepository
setPartitioner
ターゲットステップのステップ実行メタデータを生成するために使用されるPartitioner。- パラメーター:
partitioner- 設定するパーティショナー
setStepName
パーティション全体で実行されるターゲットステップの名前。デフォルトなしの必須。- パラメーター:
stepName- 設定するステップ名
getStepName
インターフェースからコピーされた説明:StepExecutionSplitterリモートで実行されるステップ構成の名前。リモートワーカーは、パーティション内の各実行コンテキストに対して同じステップを実行します。- 次で指定:
- インターフェース
StepExecutionSplitterのgetStepName - 戻り値:
- ビジネスロジックを実行するステップの名前
- 関連事項:
split
public SetSE<StepExecution> split(StepExecution stepExecution, int gridSize) throws JobExecutionException インターフェースからコピーされた説明:StepExecutionSplitter提供されたStepExecutionを、同じ親JobExecutionを持つ並列実行可能インスタンスのセットに分割します。グリッドサイズは、返されるコレクションのサイズのヒントとして扱われます。実行グリッドの物理サイズに対応する場合と対応しない場合があります。
再起動時に、StepExecutionSplitterのクライアントは、最後に失敗した実行の状態を再構成し、再起動が必要な実行のみを返すことを期待する必要があります。グリッドサイズのヒントは再起動時に無視されます。- 次で指定:
- インターフェース
StepExecutionSplitterのsplit - パラメーター:
stepExecution- パーティション化されるStepExecution。gridSize- グリッドのサイズがわかっている場合のスプリッターのヒント- 戻り値:
- リモート処理用の
StepExecutionインスタンスのセット - 例外:
JobExecutionException- 分割できない場合- 関連事項:
isStartable
protected boolean isStartable(StepExecution stepExecution, ExecutionContext context) throws JobExecutionException ステップ実行が開始可能かどうかを確認します。- パラメーター:
stepExecution- チェックするステップ実行context- ステップの実行コンテキスト- 戻り値:
- ステップの実行が開始可能な場合は true、そうでない場合は false
- 例外:
JobExecutionException- ステップの実行が開始可能かどうかを確認できない場合