クラス FaultTolerantChunkProcessor<I,O>

java.lang.ObjectSE
org.springframework.batch.core.step.item.SimpleChunkProcessor<I,O>
org.springframework.batch.core.step.item.FaultTolerantChunkProcessor<I,O>
実装されたすべてのインターフェース:
ChunkProcessor<I>org.springframework.beans.factory.InitializingBean

public class FaultTolerantChunkProcessor<I,O> extends SimpleChunkProcessor<I,O>
ChunkProcessor インターフェースの FaultTolerant 実装。これにより、書き込み中に例外を引き起こすアイテムのスキップまたは再試行が可能になります。
  • コンストラクターの詳細

  • メソッドの詳細

    • setKeyGenerator

      public void setKeyGenerator(KeyGenerator keyGenerator)
      ロールバック全体で失敗したアイテムを識別するために使用する KeyGeneratorbuffering flag が true(デフォルト)の場合は使用されません。
      パラメーター:
      keyGenerator - 設定する KeyGenerator
    • setProcessSkipPolicy

      public void setProcessSkipPolicy(SkipPolicy SkipPolicy)
      パラメーター:
      SkipPolicy - アイテム処理用の SkipPolicy
    • setWriteSkipPolicy

      public void setWriteSkipPolicy(SkipPolicy SkipPolicy)
      パラメーター:
      SkipPolicy - アイテム書き込み用の SkipPolicy
    • setRollbackClassifier

      public void setRollbackClassifier(org.springframework.classify.Classifier<ThrowableSE,BooleanSE> rollbackClassifier)
      ロールバックを引き起こす例外(true を返す)と起こさない(false を返す)例外を区別できる分類子。
      パラメーター:
      rollbackClassifier - 分類器
    • setChunkMonitor

      public void setChunkMonitor(ChunkMonitor chunkMonitor)
      パラメーター:
      chunkMonitor - モニター
    • setBuffering

      public void setBuffering(boolean buffering)
      アイテムがバッファリングされているため、ロールバック後に常にチャンクとして返されることを示すフラグ。そうしないと、ロールバック後に新しいチャンクに前に失敗したチャンクのアイテムが含まれる場合と含まれない場合があるため、状況はより複雑になります。
      パラメーター:
      buffering - アイテムがバッファリングされる場合は true
    • setProcessorTransactional

      public void setProcessorTransactional(boolean processorTransactional)
      ItemProcessor がトランザクションであることを示すフラグ(デフォルトは true)。false の場合、再試行とスキップを伴うロールバックがある場合でも、プロセッサーはチャンクごとのアイテムごとに 1 回だけ呼び出されます。
      パラメーター:
      processorTransactional - 設定するフラグ値
    • initializeUserData

      protected void initializeUserData(Chunk<I> inputs)
      クラスからコピーされた説明: SimpleChunkProcessor
      後でアカウンティングの目的で必要になった場合に備えて、サブクラスが入力内容を記憶できるようにするサブクラスの拡張ポイント。デフォルトの実装では、入力の元のサイズを記憶するためにいくつかのユーザーデータを設定します。このメソッドがオーバーライドされた場合、ユーザーデータが一貫して処理されるように、SimpleChunkProcessor.isComplete(Chunk)SimpleChunkProcessor.getFilterCount(Chunk, Chunk)SimpleChunkProcessor.getAdjustedOutputs(Chunk, Chunk) の一部またはすべても必要になる場合があります。
      オーバーライド:
      クラス SimpleChunkProcessor<I,O>initializeUserData 
      パラメーター:
      inputs - プロセスへの入力
    • getFilterCount

      protected int getFilterCount(Chunk<I> inputs, Chunk<O> outputs)
      クラスからコピーされた説明: SimpleChunkProcessor
      フィルター数を計算するためのサブクラスの拡張ポイント。デフォルトは、入力サイズと出力サイズの差です。
      オーバーライド:
      クラス SimpleChunkProcessor<I,O>getFilterCount 
      パラメーター:
      inputs - 変換後の入力
      outputs - 変換後の出力
      戻り値:
      サイズの違い
      関連事項:
    • isComplete

      protected boolean isComplete(Chunk<I> inputs)
      クラスからコピーされた説明: SimpleChunkProcessor
      入力に追加のデータを格納するサブクラスの拡張ポイント。デフォルトでは、入力が空かどうかをチェックするだけです。
      オーバーライド:
      クラス SimpleChunkProcessor<I,O>isComplete 
      パラメーター:
      inputs - 入力チャンク
      戻り値:
      空の場合は true
      関連事項:
    • getAdjustedOutputs

      protected Chunk<O> getAdjustedOutputs(Chunk<I> inputs, Chunk<O> outputs)
      クラスからコピーされた説明: SimpleChunkProcessor
      入力に保存された追加データに基づいて出力を調整するサブクラスの拡張ポイント。デフォルトの実装では、出力は変更されずに返されます。
      オーバーライド:
      クラス SimpleChunkProcessor<I,O>getAdjustedOutputs 
      パラメーター:
      inputs - 変換の入力
      outputs - 変換の結果
      戻り値:
      出力は変更されません
      関連事項:
    • transform

      protected Chunk<O> transform(StepContribution contribution, Chunk<I> inputs) throws ExceptionSE
      オーバーライド:
      クラス SimpleChunkProcessor<I,O>transform 
      例外:
      ExceptionSE
    • write

      protected void write(StepContribution contribution, Chunk<I> inputs, Chunk<O> outputs) throws ExceptionSE
      クラスからコピーされた説明: SimpleChunkProcessor
      単純な実装では、SimpleChunkProcessor.doWrite(Chunk) メソッドに委譲し、コントリビューションの書き込みカウントをインクリメントします。サブクラスは、フォールトトレランスなど、より複雑なシナリオを処理できます。出力項目がスキップされた場合は、入力からも削除する必要があります。
      オーバーライド:
      クラス SimpleChunkProcessor<I,O>write 
      パラメーター:
      contribution - 現在のステップの貢献
      inputs - 出力を生じさせた入力
      outputs - 書き込む出力
      例外:
      ExceptionSE - 問題がある場合