public class ValidatableFileDataReader extends FileDataReader
ValidatableFileDataReader.FileValidatorAction
に実装されたバリデーションロジックを
ValidatableFileDataReader.setValidatorAction(FileValidatorAction)
から設定することができる。
バリデーションが正常終了した場合は、入力ファイルを開きなおして本処理を行う。ValidatableFileDataReader.setUseCache(boolean)
にtrue
を設定することで、バリデーション時に読み込んだデータを
メモリ上にキャッシュし、都度2回の読み込みを1回に削減することができる。Modifier and Type | Class and Description |
---|---|
static interface |
ValidatableFileDataReader.FileValidatorAction
バリデーションを行うオブジェクトが実装するインタフェース。
このインタフェースに定義されたメソッドの他に、
以下のシグニチャを持ったメソッドをレコードタイプ毎に定義する必要がある。
このメソッドには、対象のレコードタイプに合わせたバリデーションロジックを実装する。 public Result "do" + [レコードタイプ名](DataRecord record, ExecutionContext ctx);
|
DataReader.NoMoreRecord
Constructor and Description |
---|
ValidatableFileDataReader()
ValidatableFileDataReader オブジェクトを生成する。 |
Modifier and Type | Method and Description |
---|---|
ValidatableFileDataReader |
setUseCache(boolean useCache)
バリデーション時に読み込んだデータをキャッシュし、本処理で使用するかどうかを設定する。
|
ValidatableFileDataReader |
setValidatorAction(ValidatableFileDataReader.FileValidatorAction validatorAction)
バリデーション処理を実装したアクションクラスを設定する。
|
setBufferSize, setDataFile, setDataFile, setLayoutFile, setLayoutFile
close, hasNext, read
@Published(tag="architect") public ValidatableFileDataReader()
ValidatableFileDataReader
オブジェクトを生成する。@Published(tag="architect") public ValidatableFileDataReader setUseCache(boolean useCache)
useCache
- キャッシュを有効化する場合はtrue
@Published(tag="architect") public ValidatableFileDataReader setValidatorAction(ValidatableFileDataReader.FileValidatorAction validatorAction)
validatorAction
- バリデーションを実装したアクションクラスjava.lang.IllegalArgumentException
- バリデーションを実装したアクションクラスがnull
の場合