Package nablarch.test.core.file
Class DataFile
java.lang.Object
nablarch.test.core.file.DataFile
- Direct Known Subclasses:
 FixedLengthFile,VariableLengthFile
ファイルを表すクラス。
 
ファイルへ書き出す機能(準備データ作成用)と ファイルから読み込む機能(結果ファイル確認用)を持つ。
本インスタンスは複数のDataFileFragmentにより構成される。 ファイル全体に関わる情報(ディレクティブなど)は本クラスが保持し、 レコードレイアウト毎の情報(レコード長など)はDataFileFragmentが保持する。
ほとんどの機能は本クラスで実装されているが、ファイルタイプにより処理が異なる部分は サブクラスで定義される。- Author:
 - T.Kawasaki
 
- 
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final List<DataFileFragment>この固定長ファイルを構成する断片ディレクティブ一覧 - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionprotected ObjectconvertDirectiveValue(nablarch.core.dataformat.DataRecordFormatterSupport.Directive directive, String stringValue) ディレクティブの値を、文字列から各ディレクティブが許容する型に変換する。nablarch.core.dataformat.LayoutDefinitionフォーマット定義を作成する。
本インスタンスおよび所有するDataFileFragmentのレイアウト情報を元に フォーマット定義を生成する。 書き込み時に使用する。 (書き込み時はレイアウト種別を明示的に指定できるため、1つのレイアウトでまかなえる)nablarch.core.dataformat.LayoutDefinitioncreateLayout(DataFileFragment... fragments) フォーマット定義を作成する。
本インスタンスおよび所有するDataFileFragmentのレイアウト情報を元に フォーマット定義を生成する。protected abstract DataFileFragment新しいファイルの断片を生成する。
生成された断片はこのファイルの管理下に置かれる。protected final Charsetディレクティブからエンコーディングを取得する。protected abstract Stringファイルタイプを取得する。この固定長ファイルを構成する、新しい断片を取得する。getPath()ファイルパスを取得する。protected final voidデフォルトのディレクティブを取得する。
デフォルト値が設定されていない場合は空のMapを返却する(デフォルト値なし)。List<nablarch.core.dataformat.DataRecord>read()ファイルから読み込む。voidsetDirective(String directiveName, String stringValue) ディレクティブを設定する。List<nablarch.core.dataformat.DataRecord>protected abstract nablarch.core.dataformat.DataRecordFormatterSupport.Directiveディレクティブ名称からディレクティブを取得する。voidwrite()ファイルへ出力する。
出力先はコンストラクタで設定したパスとなる。 
- 
Field Details
- 
all
この固定長ファイルを構成する断片 - 
directives
ディレクティブ一覧 
 - 
 - 
Constructor Details
- 
DataFile
コンストラクタ。- Parameters:
 path- ファイルパス
 
 - 
 - 
Method Details
- 
prepareDefaultDirectives
デフォルトのディレクティブを取得する。
デフォルト値が設定されていない場合は空のMapを返却する(デフォルト値なし)。- Parameters:
 key- コンポーネント設定ファイルのキー
 - 
getFileType
ファイルタイプを取得する。- Returns:
 - ファイルタイプ
 
 - 
write
public void write()ファイルへ出力する。
出力先はコンストラクタで設定したパスとなる。 - 
getNewFragment
この固定長ファイルを構成する、新しい断片を取得する。- Returns:
 - DataFileFragment
 
 - 
createNewFragment
新しいファイルの断片を生成する。
生成された断片はこのファイルの管理下に置かれる。- Returns:
 - 新しいファイル断片
 
 - 
toDataRecords
- Returns:
 - 変換結果
 
 - 
read
ファイルから読み込む。
読み込み先はコンストラクタで指定したファイルパスとなる。 読み込み時に使用されるファイルフォーマットは、 本インスタンスが持つDataFileFragmentを使用する。
本インスタンスに対応するデータを読み終えたあとで、 入力ストリームが終端に達していない場合、最末尾のレコードレイアウトで残りのストリームを読み切る。
- Returns:
 - 読み込み結果
 
 - 
createLayout
public nablarch.core.dataformat.LayoutDefinition createLayout()フォーマット定義を作成する。
本インスタンスおよび所有するDataFileFragmentのレイアウト情報を元に フォーマット定義を生成する。 書き込み時に使用する。 (書き込み時はレイアウト種別を明示的に指定できるため、1つのレイアウトでまかなえる)- Returns:
 - フォーマット定義
 
 - 
createLayout
フォーマット定義を作成する。
本インスタンスおよび所有するDataFileFragmentのレイアウト情報を元に フォーマット定義を生成する。- Parameters:
 fragments- 元となる断片- Returns:
 - フォーマット定義
 
 - 
setDirective
ディレクティブを設定する。- Parameters:
 directiveName- ディレクティブ名称stringValue- 値- Throws:
 IllegalArgumentException- 許容されないディレクティブが設定された場合
 - 
getPath
ファイルパスを取得する。- Returns:
 - ファイルパス
 
 - 
convertDirectiveValue
protected Object convertDirectiveValue(nablarch.core.dataformat.DataRecordFormatterSupport.Directive directive, String stringValue) ディレクティブの値を、文字列から各ディレクティブが許容する型に変換する。- Parameters:
 directive- ディレクティブstringValue- 値- Returns:
 - 変換後の値
 
 - 
valueOf
protected abstract nablarch.core.dataformat.DataRecordFormatterSupport.Directive valueOf(String directiveName) ディレクティブ名称からディレクティブを取得する。- Parameters:
 directiveName- ディレクティブ名称- Returns:
 - ディレクティブ
 
 - 
getEncodingFromDirectives
ディレクティブからエンコーディングを取得する。- Returns:
 - ディレクティブで定義されたエンコーディングF
 
 
 -