クラス SimpleJobRepository
- 実装されたすべてのインターフェース:
JobRepository
注入された DAO を使用して、ジョブインスタンス、ジョブ実行、ステップ実行を格納する JobRepository
の実装。
- 作成者:
- Lucas Ward, Dave Syer, Robert Kasanicky, David Turanski, Mahmoud Ben Hassine, Baris Cubukcuoglu, Parikshit Dutta, Mark John Moreno
- 関連事項:
コンストラクターのサマリー
コンストラクター説明SimpleJobRepository
(JobInstanceDao jobInstanceDao, JobExecutionDao jobExecutionDao, StepExecutionDao stepExecutionDao, ExecutionContextDao ecDao) メソッドのサマリー
修飾子と型メソッド説明void
add
(StepExecution stepExecution) StepExecution
とそのExecutionContext
を保存します。void
addAll
(CollectionSE<StepExecution> stepExecutions) StepExecution
と各ExecutionContext
のコレクションを保存します。createJobExecution
(StringSE jobName, JobParameters jobParameters) createJobInstance
(StringSE jobName, JobParameters jobParameters) 指定された名前とジョブパラメーターを使用して、新しいJobInstance
を作成します。void
deleteJobExecution
(JobExecution jobExecution) ジョブ実行オブジェクトグラフの削除 (つまり、ジョブの実行とその実行コンテキスト、関連するすべてのステップ実行とその実行コンテキスト、関連するジョブパラメーター)void
deleteJobInstance
(JobInstance jobInstance) ジョブインスタンスオブジェクトグラフ (つまり、関連付けられたすべてのジョブ実行を含むジョブインスタンスと、JobRepository.deleteJobExecution(JobExecution)
で指定されたそれぞれのオブジェクトグラフ) を削除します。void
deleteStepExecution
(StepExecution stepExecution) ステップ実行をその実行コンテキストとともに削除します。findJobExecutions
(JobInstance jobInstance) 指定されたJobInstance
のすべてのJobExecution
を、作成順で逆順にソートして返します(したがって、最初の要素が最新になります)。findJobInstancesByName
(StringSE jobName, int start, int count) 'like' 条件を使用して、指定された名前で最後のジョブインスタンスをフェッチし、主キーで後方にソートしますgetJobInstance
(StringSE jobName, JobParameters jobParameters) すべてのジョブインスタンスの名前をアルファベット順に並べ替えます。つまりgetLastJobExecution
(StringSE jobName, JobParameters jobParameters) getLastStepExecution
(JobInstance jobInstance, StringSE stepName) long
getStepExecutionCount
(JobInstance jobInstance, StringSE stepName) boolean
isJobInstanceExists
(StringSE jobName, JobParameters jobParameters) 指定されたパラメーターを使用して、このジョブのインスタンスがすでに存在するかどうかを確認します。void
update
(JobExecution jobExecution) JobExecution
を更新します(ただし、ExecutionContext
は更新しません)。void
update
(StepExecution stepExecution) StepExecution
を更新します(ただし、ExecutionContext
は更新しません)。void
updateExecutionContext
(JobExecution jobExecution) 指定されたJobExecution
の更新されたExecutionContext
を永続化します。void
updateExecutionContext
(StepExecution stepExecution) 指定されたStepExecution
の更新されたExecutionContext
を永続化します。
コンストラクターの詳細
SimpleJobRepository
public SimpleJobRepository(JobInstanceDao jobInstanceDao, JobExecutionDao jobExecutionDao, StepExecutionDao stepExecutionDao, ExecutionContextDao ecDao)
メソッドの詳細
getJobNames
インターフェースからコピーされた説明:JobRepository
アルファベット順にソートされたすべてのジョブインスタンスの名前、つまり、これまでに実行されたジョブを取得します。- 次で指定:
- インターフェース
JobRepository
のgetJobNames
- 戻り値:
- すべてのジョブインスタンスの名前
findJobInstancesByName
インターフェースからコピーされた説明:JobRepository
'like' 条件を使用して、指定された名前で最後のジョブインスタンスをフェッチし、主キーで後方にソートします- 次で指定:
- インターフェース
JobRepository
のfindJobInstancesByName
- パラメーター:
jobName
- ジョブの名前を含むString
SE。start
- ジョブインスタンスの結果リストの開始位置のオフセットを含む int。count
- 返すジョブインスタンスの数を含む int。- 戻り値:
- リクエストされたジョブ名の
JobInstance
のリスト。
findJobExecutions
インターフェースからコピーされた説明:JobRepository
指定されたJobInstance
のすべてのJobExecution
を、作成順で逆順にソートして返します(したがって、最初の要素が最新になります)。- 次で指定:
- インターフェース
JobRepository
のfindJobExecutions
- パラメーター:
jobInstance
- 検索するJobExecution
の親JobInstance
- 戻り値:
- jobInstance 用の JobExecutions を含む
List
SE。
isJobInstanceExists
インターフェースからコピーされた説明:JobRepository
指定されたパラメーターを使用して、このジョブのインスタンスがすでに存在するかどうかを確認します。- 次で指定:
- インターフェース
JobRepository
のisJobInstanceExists
- パラメーター:
jobName
- ジョブの名前jobParameters
- 一致するパラメーター- 戻り値:
- このジョブ名とジョブパラメーターに対して
JobInstance
がすでに存在する場合は true
createJobExecution
public JobExecution createJobExecution(StringSE jobName, JobParameters jobParameters) throws JobExecutionAlreadyRunningException, JobRestartException, JobInstanceAlreadyCompleteException インターフェースからコピーされた説明:JobRepository
指定された
Job
およびJobParameters
のJobExecution
を作成します。一致するJobInstance
がすでに存在する場合、ジョブは再開可能でなければならず、最後の JobExecution は * 完了 * してはなりません。一致するJobInstance
がまだ存在しない場合は作成されます。このメソッドが(通常どおり)
Isolation.REPEATABLE_READ
以上の分離レベルでトランザクションで実行される場合、このメソッドは(同じJobParameters
とジョブ名に対して)別のトランザクションがすでに実行している場合、ブロックする必要があります。このシナリオで最初に完了するトランザクションは、有効なJobExecution
を取得し、他のトランザクションはJobExecutionAlreadyRunningException
(またはタイムアウト)をスローします。JobInstanceDao
およびJobExecutionDao
がトランザクション分離レベルを考慮しない場合(たとえば、非リレーショナルデータストアを使用する場合、プラットフォームがより高い分離レベルをサポートしない場合)、そのような保証はありません。- 次で指定:
- インターフェース
JobRepository
のcreateJobExecution
- パラメーター:
jobName
- 実行されるジョブの名前jobParameters
- ジョブの実行時パラメーター- 戻り値:
- 指定された引数の有効な
JobExecution
- 例外:
JobExecutionAlreadyRunningException
- 指定されたジョブとパラメーターを使用して、ジョブインスタンスに対してJobExecution
がすでに実行されている場合。JobRestartException
- 1 つ以上の既存のJobInstance
が同じパラメーターで見つかり、Job.isRestartable()
が false の場合。JobInstanceAlreadyCompleteException
-JobInstance
が見つかり、すでに正常に完了した場合。
update
インターフェースからコピーされた説明:JobRepository
JobExecution
を更新します(ただし、ExecutionContext
は更新しません)。事前条件:
JobExecution
には有効なJobInstance
が含まれており、保存される (ID が割り当てられる) 必要があります。- 次で指定:
- インターフェース
JobRepository
のupdate
- パラメーター:
jobExecution
- リポジトリで更新されるJobExecution
インスタンス。
add
インターフェースからコピーされた説明:JobRepository
StepExecution
とそのExecutionContext
を保存します。ID が割り当てられます - このメソッドを呼び出す前に ID を割り当てることは許可されていません。代わりに、JobRepository
によって割り当てられるように、空白のままにしておく必要があります。事前条件:
StepExecution
には有効なStep
が必要です。- 次で指定:
- インターフェース
JobRepository
のadd
- パラメーター:
stepExecution
- リポジトリに追加されるStepExecution
インスタンス。
addAll
インターフェースからコピーされた説明:JobRepository
StepExecution
と各ExecutionContext
のコレクションを保存します。StepExecution ID が割り当てられます。このメソッドを呼び出す前に ID を割り当てることは許可されていません。代わりに、JobRepository
によって割り当てられるように、空白のままにしておく必要があります。事前条件:
StepExecution
には有効なStep
が必要です。- 次で指定:
- インターフェース
JobRepository
のaddAll
- パラメーター:
stepExecutions
- リポジトリに追加されるStepExecution
インスタンスのコレクション。
update
インターフェースからコピーされた説明:JobRepository
StepExecution
を更新します(ただし、ExecutionContext
は更新しません)。事前条件:
StepExecution
は保存する必要があります (ID が割り当てられている)。- 次で指定:
- インターフェース
JobRepository
のupdate
- パラメーター:
stepExecution
- リポジトリで更新されるStepExecution
インスタンス。
updateExecutionContext
インターフェースからコピーされた説明:JobRepository
指定されたStepExecution
の更新されたExecutionContext
を永続化します。- 次で指定:
- インターフェース
JobRepository
のupdateExecutionContext
- パラメーター:
stepExecution
- コンテキストの更新に使用されるStepExecution
インスタンス。
updateExecutionContext
インターフェースからコピーされた説明:JobRepository
指定されたJobExecution
の更新されたExecutionContext
を永続化します。- 次で指定:
- インターフェース
JobRepository
のupdateExecutionContext
- パラメーター:
jobExecution
- コンテキストの更新に使用されるJobExecution
インスタンス。
getJobInstance
- 次で指定:
- インターフェース
JobRepository
のgetJobInstance
- パラメーター:
jobName
-String
SE ジョブの名前。jobParameters
- ジョブインスタンスのJobParameters
パラメーター。- 戻り値:
- 指定された名前とパラメーターを持つ
JobInstance
、またはnull
。
getLastStepExecution
- 次で指定:
- インターフェース
JobRepository
のgetLastStepExecution
- パラメーター:
jobInstance
- ステップ実行を含むJobInstance
インスタンス。stepName
- 実行された可能性のあるステップ実行の名前。- 戻り値:
- 指定されたジョブインスタンスのステップの最後の実行。
getStepExecutionCount
- 次で指定:
- インターフェース
JobRepository
のgetStepExecutionCount
- パラメーター:
jobInstance
- ステップ実行を含むJobInstance
インスタンス。stepName
- 実行された可能性のあるステップ実行の名前。- 戻り値:
- 特定のジョブインスタンス内のステップの実行回数
getLastJobExecution
- 次で指定:
- インターフェース
JobRepository
のgetLastJobExecution
- パラメーター:
jobName
- 実行された可能性のあるジョブの名前jobParameters
-JobInstance
を識別するパラメーター- 戻り値:
- 存在する場合はジョブの最後の実行、そうでない場合は null
deleteStepExecution
インターフェースからコピーされた説明:JobRepository
ステップ実行をその実行コンテキストとともに削除します。- 次で指定:
- インターフェース
JobRepository
のdeleteStepExecution
- パラメーター:
stepExecution
- 削除するステップ実行
deleteJobExecution
インターフェースからコピーされた説明:JobRepository
ジョブ実行オブジェクトグラフの削除 (つまり、ジョブの実行とその実行コンテキスト、関連するすべてのステップ実行とその実行コンテキスト、関連するジョブパラメーター)- 次で指定:
- インターフェース
JobRepository
のdeleteJobExecution
- パラメーター:
jobExecution
- 削除するジョブ実行
deleteJobInstance
インターフェースからコピーされた説明:JobRepository
ジョブインスタンスオブジェクトグラフ (つまり、関連付けられたすべてのジョブ実行を含むジョブインスタンスと、JobRepository.deleteJobExecution(JobExecution)
で指定されたそれぞれのオブジェクトグラフ) を削除します。- 次で指定:
- インターフェース
JobRepository
のdeleteJobInstance
- パラメーター:
jobInstance
- 削除するジョブインスタンス
createJobInstance
インターフェースからコピーされた説明:JobRepository
指定された名前とジョブパラメーターを使用して、新しいJobInstance
を作成します。- 次で指定:
- インターフェース
JobRepository
のcreateJobInstance
- パラメーター:
jobName
- ジョブの論理名jobParameters
- ジョブの実行に使用されるパラメーター- 戻り値:
- 新しい
JobInstance