Package nablarch.test.core.file
Class DataFileFragment
java.lang.Object
nablarch.test.core.file.DataFileFragment
- Direct Known Subclasses:
FixedLengthFileFragment
,VariableLengthFileFragment
ファイルの断片を表すクラス。
1つのレコード種別とそのレコード種別に適合する複数のレコードにより構成される。
1つのレコード種別とそのレコード種別に適合する複数のレコードにより構成される。
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
値を追加する。void
addValueWithId
(List<String> line, String no) 最初のフィールドの値(連番)を追加する。convertForDataRecord
(Map<String, String> value) テストデータ(文字列)からDataRecord
用に値を変換する。protected abstract Object
convertValue
(String fieldName, String stringExpression) 値の型変換を行う。protected abstract FieldDefinition
createFieldDefinition
(int fieldIndex) protected abstract ConvertorFactorySupport
コンバータの生成を行うクラスを取得する。protected DataType
getDataType
(String typeSymbol, FieldDefinition field, int length) データタイプを取得する。protected FieldDefinition
getFieldDefinition
(String fieldName) フィールド定義を取得する。protected final int
getIndexOf
(String fieldName) フィールド名からそのフィールドが格納されている位置(インデックス)を取得する。protected final int
getLengthOf
(String fieldName) フィールド名から、そのフィールドのフィールド長を取得する。protected String
getTypeForTest
(int fieldIndex) フィールドに対するテスト用のデータ型シンボルを取得する。protected final String
フィールド名から、そのフィールドのレコードタイプを取得する。protected abstract boolean
各要素のサイズが妥当であるかどうか判定する。protected Object
removePadding
(String fieldName, Object value, FixedLengthDataRecordFormatter formatter) パディングを取り除く。void
setLengths
(List<String> lengths) フィールド長を設定する。
フィールド長の要素数はフィールド名と同じでなければならない。void
フィールド名称を設定する。void
setRecordType
(String recordType) レコード種別を設定する。void
データ型のシンボルを設定する。
データ型の要素数はフィールド名と同じでなければならない。toString()
-
Field Details
-
container
この断片を包含するファイル -
names
フィールド名称 -
types
データ型のシンボル -
lengths
フィールド長 -
values
レコードのデータ -
FIRST_FIELD_NO
最初のフィールドの値(連番)が格納されるキー- See Also:
-
-
Constructor Details
-
DataFileFragment
コンストラクタ。- Parameters:
container
- 本インスタンスが所属するファイル
-
-
Method Details
-
setRecordType
レコード種別を設定する。- Parameters:
recordType
- レコード種別
-
addValue
値を追加する。- Parameters:
line
- 行データ
-
addValueWithId
最初のフィールドの値(連番)を追加する。- Parameters:
line
- 行データno
- 最初のフィールドの値(連番)
-
setNames
フィールド名称を設定する。- Parameters:
names
- フィールド名称
-
setTypes
データ型のシンボルを設定する。
データ型の要素数はフィールド名と同じでなければならない。- Parameters:
types
- データ型のシンボル
-
getTypeForTest
フィールドに対するテスト用のデータ型シンボルを取得する。
テスト用のデータ型シンボルは、通常typesのデータ型シンボルであるが、 "TEST_
" というデータ型シンボルが存在した場合はこのデータ型シンボルを使用する。 例えば下記の様なデータ型がフィールド定義に存在していた場合を考える。
X X9 TEST_X9 typesに入ったデータ型 X X9 戻り値のデータ型シンボル X TEST_X9 - Parameters:
fieldIndex
- 対象となるフィールドのインデックス- Returns:
- テスト用のデータ型シンボル
-
getConvertorFactorySupport
コンバータの生成を行うクラスを取得する。- Returns:
- コンバータの生成を行うファクトリクラス
-
setLengths
フィールド長を設定する。
フィールド長の要素数はフィールド名と同じでなければならない。- Parameters:
lengths
- フィールド長
-
convertForDataRecord
テストデータ(文字列)からDataRecord
用に値を変換する。- Parameters:
value
- 元の値(文字列)- Returns:
- 変換後の値
-
convertValue
値の型変換を行う。- Parameters:
fieldName
- フィールド名称stringExpression
- 処理対象フィールドの文字列表現- Returns:
- 型変換された値
-
getTypeOf
フィールド名から、そのフィールドのレコードタイプを取得する。- Parameters:
fieldName
- フィールド名- Returns:
- レコードタイプ
-
getIndexOf
フィールド名からそのフィールドが格納されている位置(インデックス)を取得する。- Parameters:
fieldName
- フィールド名- Returns:
- インデックス
-
getFieldDefinition
フィールド定義を取得する。- Parameters:
fieldName
- フィールド名- Returns:
- フィールド定義
-
removePadding
protected Object removePadding(String fieldName, Object value, FixedLengthDataRecordFormatter formatter) パディングを取り除く。- Parameters:
fieldName
- フィールド名称value
- 処理対象となる値formatter
- バディング除去用のフォーマッタ- Returns:
- パディングを取り除いた値
-
getDataType
データタイプを取得する。- Parameters:
typeSymbol
- データタイプ名field
- フィールド定義length
- フィールド長- Returns:
- データタイプ
-
createFieldDefinition
- Parameters:
fieldIndex
- 対象となるフィールドのインデックス- Returns:
- 生成したFieldDefinition
-
isSizeValid
protected abstract boolean isSizeValid()各要素のサイズが妥当であるかどうか判定する。- Returns:
- 妥当である場合、真
-
toString
-
getLengthOf
フィールド名から、そのフィールドのフィールド長を取得する。- Parameters:
fieldName
- フィールド名- Returns:
- フィールド長
-