クラス 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 boolean
isStartable
(StepExecution stepExecution, ExecutionContext context) ステップ実行が開始可能かどうかを確認します。void
setAllowStartIfComplete
(boolean allowStartIfComplete) 実行が完了した場合にパーティションターゲットステップを開始できることを示すフラグ。void
setJobRepository
(JobRepository jobRepository) デリゲートステップ実行の永続性を管理するために使用されるジョブリポジトリ。void
setPartitioner
(Partitioner partitioner) ターゲットステップのステップ実行メタデータを生成するために使用されるPartitioner
。void
setStepName
(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
-JobRepository
allowStartIfComplete
- 再起動時の設定を指定するフラグ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
- ステップの実行が開始可能かどうかを確認できない場合