クラス ResourcelessJobRepository

java.lang.ObjectSE
org.springframework.batch.core.repository.support.ResourcelessJobRepository
実装済みのインターフェース一覧:
JobRepository

public class ResourcelessJobRepository extends ObjectSE implements JobRepository
バッチメタデータを使用または保存しない JobRepository 実装。これは、再起動が不要で、実行コンテキストがまったく関与しないユースケースを対象としています (実行コンテキストを介してステップ間でデータを共有する場合や、実行コンテキストを介してマネージャーと ワーカー間でパーティションメタデータが共有されるパーティション化されたステップなど)。
この実装は、独自の JVM で実行される 1 回限りのジョブに適した単一のジョブインスタンスと対応するジョブ実行を保持します。このジョブリポジトリは、トランザクションステップと非トランザクションステップ (この場合は ResourcelessTransactionManager を使用できます) の両方で機能します。
この実装はスレッドセーフではないため、同時実行環境では使用しないでください。
導入:
5.2.0
作成者:
Mahmoud Ben Hassine, Andrey Litvitski
  • コンストラクターの詳細

    • ResourcelessJobRepository

      public ResourcelessJobRepository()
  • 方法の詳細

    • isJobInstanceExists

      public boolean isJobInstanceExists(StringSE jobName, JobParameters jobParameters)
      インターフェースからコピーされた説明: JobRepository
      指定されたパラメーターを使用して、このジョブのインスタンスがすでに存在するかどうかを確認します。
      次で指定:
      インターフェース JobRepositoryisJobInstanceExists 
      パラメーター:
      jobName - ジョブの名前
      jobParameters - 一致するパラメーター
      戻り値:
      このジョブ名とジョブパラメーターに対して JobInstance がすでに存在する場合は true
    • createJobInstance

      public JobInstance createJobInstance(StringSE jobName, JobParameters jobParameters)
      インターフェースからコピーされた説明: JobRepository
      指定された名前とジョブパラメーターを使用して、新しい JobInstance を作成します。
      次で指定:
      インターフェース JobRepositorycreateJobInstance 
      パラメーター:
      jobName - ジョブの論理名
      jobParameters - ジョブの実行に使用されるパラメーター
      戻り値:
      新しい JobInstance
    • createJobExecution

      public JobExecution createJobExecution(StringSE jobName, JobParameters jobParameters)
      インターフェースからコピーされた説明: JobRepository

      指定された Job および JobParametersJobExecution を作成します。一致する JobInstance がすでに存在する場合、ジョブは再開可能でなければならず、最後の JobExecution は * 完了 * してはなりません。一致する JobInstance がまだ存在しない場合は作成されます。

      このメソッドが(通常どおり) Isolation.REPEATABLE_READ 以上の分離レベルでトランザクションで実行される場合、このメソッドは(同じ JobParameters とジョブ名に対して)別のトランザクションがすでに実行している場合、ブロックする必要があります。このシナリオで最初に完了するトランザクションは、有効な JobExecution を取得し、他のトランザクションは JobExecutionAlreadyRunningException(またはタイムアウト)をスローします。JobInstanceDao および JobExecutionDao がトランザクション分離レベルを考慮しない場合(たとえば、非リレーショナルデータストアを使用する場合、プラットフォームがより高い分離レベルをサポートしない場合)、そのような保証はありません。

      次で指定:
      インターフェース JobRepositorycreateJobExecution 
      パラメーター:
      jobName - 実行されるジョブの名前
      jobParameters - ジョブの実行時パラメーター
      戻り値:
      指定された引数の有効な JobExecution
    • update

      public void update(JobExecution jobExecution)
      インターフェースからコピーされた説明: JobRepository
      JobExecution を更新します(ただし、ExecutionContext は更新しません)。

      事前条件: JobExecution には有効な JobInstance が含まれており、保存される (ID が割り当てられる) 必要があります。

      次で指定:
      インターフェース JobRepositoryupdate 
      パラメーター:
      jobExecution - リポジトリで更新される JobExecution インスタンス。
    • add

      public void add(StepExecution stepExecution)
      インターフェースからコピーされた説明: JobRepository
      StepExecution とその ExecutionContext を保存します。ID が割り当てられます - このメソッドを呼び出す前に ID を割り当てることは許可されていません。代わりに、JobRepository によって割り当てられるように、空白のままにしておく必要があります。

      事前条件: StepExecution には有効な Step が必要です。

      次で指定:
      インターフェース JobRepositoryadd 
      パラメーター:
      stepExecution - リポジトリに追加される StepExecution インスタンス。
    • addAll

      public void addAll(CollectionSE<StepExecution> stepExecutions)
      インターフェースからコピーされた説明: JobRepository
      StepExecution と各 ExecutionContext のコレクションを保存します。StepExecution ID が割り当てられます。このメソッドを呼び出す前に ID を割り当てることは許可されていません。代わりに、JobRepository によって割り当てられるように、空白のままにしておく必要があります。

      事前条件: StepExecution には有効な Step が必要です。

      次で指定:
      インターフェース JobRepositoryaddAll 
      パラメーター:
      stepExecutions - リポジトリに追加される StepExecution インスタンスのコレクション。
    • update

      public void update(StepExecution stepExecution)
      インターフェースからコピーされた説明: JobRepository
      StepExecution を更新します(ただし、ExecutionContext は更新しません)。

      事前条件: StepExecution は保存する必要があります (ID が割り当てられている)。

      次で指定:
      インターフェース JobRepositoryupdate 
      パラメーター:
      stepExecution - リポジトリで更新される StepExecution インスタンス。
    • updateExecutionContext

      public void updateExecutionContext(StepExecution stepExecution)
      インターフェースからコピーされた説明: JobRepository
      指定された StepExecution の更新された ExecutionContext を永続化します。
      次で指定:
      インターフェース JobRepositoryupdateExecutionContext 
      パラメーター:
      stepExecution - コンテキストの更新に使用される StepExecution インスタンス。
    • updateExecutionContext

      public void updateExecutionContext(JobExecution jobExecution)
      インターフェースからコピーされた説明: JobRepository
      指定された JobExecution の更新された ExecutionContext を永続化します。
      次で指定:
      インターフェース JobRepositoryupdateExecutionContext 
      パラメーター:
      jobExecution - コンテキストの更新に使用される JobExecution インスタンス。
    • getLastStepExecution

      public StepExecution getLastStepExecution(JobInstance jobInstance, StringSE stepName)
      次で指定:
      インターフェース JobRepositorygetLastStepExecution 
      パラメーター:
      jobInstance - ステップ実行を含む JobInstance インスタンス。
      stepName - 実行された可能性のあるステップ実行の名前。
      戻り値:
      指定されたジョブインスタンスのステップの最後の実行。
    • getStepExecutionCount

      public long getStepExecutionCount(JobInstance jobInstance, StringSE stepName)
      次で指定:
      インターフェース JobRepositorygetStepExecutionCount 
      パラメーター:
      jobInstance - ステップ実行を含む JobInstance インスタンス。
      stepName - 実行された可能性のあるステップ実行の名前。
      戻り値:
      指定されたジョブインスタンス内のステップの実行カウント。
    • getLastJobExecution

      public JobExecution getLastJobExecution(StringSE jobName, JobParameters jobParameters)
      次で指定:
      インターフェース JobRepositorygetLastJobExecution 
      パラメーター:
      jobName - 実行された可能性のあるジョブの名前
      jobParameters - JobInstance を識別するパラメーター
      戻り値:
      存在する場合はジョブの最後の実行、そうでない場合は null