クラス SingleItemPeekableItemReader<T>
java.lang.ObjectSE
org.springframework.batch.item.support.SingleItemPeekableItemReader<T>
- 実装されているすべてのインターフェース:
ItemReader<T>、ItemStream、ItemStreamReader<T>、PeekableItemReader<T>
public class SingleItemPeekableItemReader<T>
extends ObjectSE
implements ItemStreamReader<T>, PeekableItemReader<T>
ユーザーが 1 つのアイテムを先に覗くことができる PeekableItemReader。peek() を繰り返し呼び出すと同じ項目が返され、これが read() から返される次の項目になります。
意図的にスレッドセーフではない: ピークしたスレッドの 1 つだけが次の read 呼び出しでその項目を取得するため、複数のスレッドでピークを尊重することはできません。
- 作成者:
- Dave Syer, Mahmoud Ben Hassine
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidclose()デリゲートがItemStreamの場合は、呼び出しを渡すだけです。それ以外の場合は、ピークキャッシュをリセットします。voidopen(ExecutionContext executionContext) デリゲートがItemStreamの場合は、呼び出しを渡すだけです。それ以外の場合は、ピークキャッシュをリセットします。peek()次の項目を確認し、デリゲートがItemStreamの場合、状態がupdate(ExecutionContext)への次の呼び出しのために保存されることを確認します。read()デリゲートから次のアイテムを取得します(すでにピークされているかどうかに関係なく)。voidsetDelegate(ItemReader<T> delegate) デリゲートとして使用するアイテムリーダー。voidupdate(ExecutionContext executionContext) キャッシュされたピークがある場合は、その時点から実行コンテキストの状態を取得します。
コンストラクターの詳細
SingleItemPeekableItemReader
public SingleItemPeekableItemReader()
メソッドの詳細
setDelegate
デリゲートとして使用するアイテムリーダー。アイテムはデリゲートから読み取られ、read()で呼び出し元に渡されます。- パラメーター:
delegate- 設定するデリゲート
read
デリゲートから次のアイテムを取得します(すでにピークされているかどうかに関係なく)。- 次で指定:
- インターフェース
ItemReader<T>のread - 戻り値:
- T 処理するアイテム、またはデータソースが使い果たされた場合は
null - 例外:
ParseException- 現在のレコードの解析に問題がある場合 (しかし、次のものはまだ有効かもしれません)NonTransientResourceException- 基礎となるリソースに致命的な例外がある場合。この例外をスローした後、実装は後続の read 呼び出しから null を返すように努める必要があります。UnexpectedInputException- 入力データに未分類の問題がある場合。潜在的に一時的であると想定します。後続の読み取り呼び出しは成功する可能性があります。ExceptionSE- 特定のエラーがない場合。- 関連事項:
peek
次の項目を確認し、デリゲートがItemStreamの場合、状態がupdate(ExecutionContext)への次の呼び出しのために保存されることを確認します。- 次で指定:
- インターフェース
PeekableItemReader<T>のpeek - 戻り値:
- 次のアイテム(ない場合は null)。
- 例外:
ExceptionSE- 問題がある場合- 関連事項:
close
デリゲートがItemStreamの場合は、呼び出しを渡すだけです。それ以外の場合は、ピークキャッシュをリセットします。- 次で指定:
- インターフェース
ItemStreamのclose - 例外:
ItemStreamException- 問題がある場合- 関連事項:
open
デリゲートがItemStreamの場合は、呼び出しを渡すだけです。それ以外の場合は、ピークキャッシュをリセットします。- 次で指定:
- インターフェース
ItemStreamのopen - パラメーター:
executionContext- 現在のコンテキスト- 例外:
ItemStreamException- 問題がある場合- 関連事項:
update
キャッシュされたピークがある場合は、その時点から実行コンテキストの状態を取得します。キャッシュされたピークがない場合は、デリゲートを直接呼び出します。- 次で指定:
- インターフェース
ItemStreamのupdate - パラメーター:
executionContext- 現在のコンテキスト- 例外:
ItemStreamException- 問題がある場合- 関連事項: