Package nablarch.test.core.reader
Class DataFileParser<T extends DataFile>
java.lang.Object
nablarch.test.core.reader.DataFileParser<T>
- Type Parameters:
T
- 解析結果の型
- Direct Known Subclasses:
FixedLengthFileParser
,VariableLengthFileParser
固定長ファイルのテストデータを解析するクラス。
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionprotected T
現在処理中のファイルprotected DataFileFragment
現在処理中の断片protected String
ディレクトリprotected String
リソース名protected DataFileParser.Status
現在の処理状態 -
Constructor Summary
ConstructorDescriptionDataFileParser
(TestDataReader reader, List<TestDataInterpreter> interpreters, DataType targetType) コンストラクタ -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract T
createNewFile
(String filePath) 新しいファイルを生成する。protected final DataType
getDataType
(String dataTypeCell) データタイプを返却する。protected final DataType
解析対象のデータ型を返却する。protected final String
getTypeValue
(List<String> dataTypeRow) テストデータタイプのバリュー値を取得する。protected abstract boolean
isDirective
(String key) ディレクティブかどうか判定する。protected void
onReadingDirectives
(List<String> line) ディレクティブ行を読み込む。protected void
onReadingLengths
(List<String> line) フィールド長の行を読み込む。protected void
onReadingNames
(List<String> line) フィールド名の行を読み込む。protected void
onReadingTypes
(List<String> line) データ型行を読み込む。protected void
onReadingValues
(List<String> line) データ行を読み込む。final void
解析を実行する。final void
解析を実行する。protected boolean
processDirectives
(List<String> line) ディレクティブ行を処理する。
与えられた行データがディレクティブ行の場合、ディレクティブを取得する。readLine()
テストデータから1行文のデータを読み込む。
テストデータをすべて読み込んだ場合は、nullを返却する。protected <TYPE> List<TYPE>
先頭要素を削除したリストを返却する。 対象となるリストが空の場合(要素数0)、空のリストをそのまま返却する。
-
Field Details
-
currentFile
現在処理中のファイル -
currentFragment
現在処理中の断片 -
status
現在の処理状態 -
directory
ディレクトリ -
resource
リソース名
-
-
Constructor Details
-
DataFileParser
public DataFileParser(TestDataReader reader, List<TestDataInterpreter> interpreters, DataType targetType) コンストラクタ- Parameters:
reader
- リーダinterpreters
- 解釈クラスtargetType
- 解析対象のデータタイプ
-
-
Method Details
-
createNewFile
新しいファイルを生成する。- Parameters:
filePath
- ファイルパス- Returns:
- ファイル
-
onReadingDirectives
ディレクティブ行を読み込む。- Parameters:
line
- 行データ
-
onReadingNames
フィールド名の行を読み込む。- Parameters:
line
- 行データ
-
onReadingTypes
データ型行を読み込む。- Parameters:
line
- 行データ
-
onReadingLengths
フィールド長の行を読み込む。- Parameters:
line
- 行データ
-
onReadingValues
データ行を読み込む。- Parameters:
line
- 行データ
-
processDirectives
ディレクティブ行を処理する。
与えられた行データがディレクティブ行の場合、ディレクティブを取得する。- Parameters:
line
- 行データ- Returns:
- 与えられた行がディレクティブ行の場合、真
-
isDirective
ディレクティブかどうか判定する。- Parameters:
key
- キー- Returns:
- 与えられたキーがディレクティブであれば真
-
tail
先頭要素を削除したリストを返却する。 対象となるリストが空の場合(要素数0)、空のリストをそのまま返却する。- Type Parameters:
TYPE
- リスト要素の型- Parameters:
list
- 対象となるリスト- Returns:
- 先頭要素を除いたリスト
-
getTargetType
解析対象のデータ型を返却する。- Returns:
- 解析対象のデータ型
-
parse
解析を実行する。読み込んだシートはキャッシュする。
- Parameters:
directory
- 読み込み元のディレクトリresource
- リソース名称id
- ID
-
parse
解析を実行する。- Parameters:
directory
- 読み込み元のディレクトリresource
- リソース名称id
- IDsaveCache
- 読み込んだファイルのデータをキャッシュに保存するか
-
getDataType
データタイプを返却する。- Parameters:
dataTypeCell
- データタイプが記載されたセル- Returns:
- データタイプ
-
getTypeValue
テストデータタイプのバリュー値を取得する。- Parameters:
dataTypeRow
- 1行分のデータ- Returns:
- バリュー値
-
readLine
テストデータから1行文のデータを読み込む。
テストデータをすべて読み込んだ場合は、nullを返却する。- Returns:
- 1行データ
-