Package nablarch.test.core.file
Class DataFileFragment
java.lang.Object
nablarch.test.core.file.DataFileFragment
- Direct Known Subclasses:
FixedLengthFileFragment,VariableLengthFileFragment
ファイルの断片を表すクラス。
1つのレコード種別とそのレコード種別に適合する複数のレコードにより構成される。
1つのレコード種別とそのレコード種別に適合する複数のレコードにより構成される。
- Author:
- T.Kawasaki
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid値を追加する。voidaddValueWithId(List<String> line, String no) 最初のフィールドの値(連番)を追加する。convertForDataRecord(Map<String, String> value) テストデータ(文字列)からDataRecord用に値を変換する。protected abstract ObjectconvertValue(String fieldName, String stringExpression) 値の型変換を行う。protected abstract nablarch.core.dataformat.FieldDefinitioncreateFieldDefinition(int fieldIndex) FieldDefinitionを生成する。
設定されたデータからFieldDefinitionを生成する。protected abstract nablarch.core.dataformat.convertor.ConvertorFactorySupportコンバータの生成を行うクラスを取得する。protected nablarch.core.dataformat.convertor.datatype.DataTypegetDataType(String typeSymbol, nablarch.core.dataformat.FieldDefinition field, int length) データタイプを取得する。protected nablarch.core.dataformat.FieldDefinitiongetFieldDefinition(String fieldName) フィールド定義を取得する。protected final intgetIndexOf(String fieldName) フィールド名からそのフィールドが格納されている位置(インデックス)を取得する。protected final intgetLengthOf(String fieldName) フィールド名から、そのフィールドのフィールド長を取得する。protected StringgetTypeForTest(int fieldIndex) フィールドに対するテスト用のデータ型シンボルを取得する。protected final Stringフィールド名から、そのフィールドのレコードタイプを取得する。protected abstract boolean各要素のサイズが妥当であるかどうか判定する。protected ObjectremovePadding(String fieldName, Object value, nablarch.core.dataformat.FixedLengthDataRecordFormatter formatter) パディングを取り除く。voidsetLengths(List<String> lengths) フィールド長を設定する。
フィールド長の要素数はフィールド名と同じでなければならない。voidフィールド名称を設定する。voidsetRecordType(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
protected abstract nablarch.core.dataformat.convertor.ConvertorFactorySupport 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, nablarch.core.dataformat.FixedLengthDataRecordFormatter formatter) パディングを取り除く。- Parameters:
fieldName- フィールド名称value- 処理対象となる値formatter- バディング除去用のフォーマッタ- Returns:
- パディングを取り除いた値
-
getDataType
protected nablarch.core.dataformat.convertor.datatype.DataType getDataType(String typeSymbol, nablarch.core.dataformat.FieldDefinition field, int length) データタイプを取得する。- Parameters:
typeSymbol- データタイプ名field- フィールド定義length- フィールド長- Returns:
- データタイプ
-
createFieldDefinition
protected abstract nablarch.core.dataformat.FieldDefinition createFieldDefinition(int fieldIndex) FieldDefinitionを生成する。
設定されたデータからFieldDefinitionを生成する。- Parameters:
fieldIndex- 対象となるフィールドのインデックス- Returns:
- 生成したFieldDefinition
-
isSizeValid
protected abstract boolean isSizeValid()各要素のサイズが妥当であるかどうか判定する。- Returns:
- 妥当である場合、真
-
toString
-
getLengthOf
フィールド名から、そのフィールドのフィールド長を取得する。- Parameters:
fieldName- フィールド名- Returns:
- フィールド長
-