|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.file.dao.standard.AbstractFileLineWriter<T>
T
- ファイル行オブジェクト。public abstract class AbstractFileLineWriter<T>
ファイルアクセス(データ書込)用の共通クラス。
ファイルアクセス(データ書込)を行う3つのクラス(CSV、固定長、可変長) に共通する処理をまとめた抽象クラス。
ファイルの種類に対応するサブクラスが処理を行う。
使用例はFileLineWriter
を参照のこと。
ファイル取得処理は下記の手順で呼び出されるように実装すること。
FileLineWriter
,
CSVFileLineWriter
,
FixedFileLineWriter
,
VariableFileLineWriter
,
PlainFileLineWriter
フィールドの概要 | |
---|---|
private java.lang.Class<T> |
clazz
パラメータクラスのクラス。 |
private java.util.Map<java.lang.String,ColumnFormatter> |
columnFormatterMap
カラムフォーマット(ファイル書込)を格納するマップ。 |
private int |
currentLineCount
書き込み処理済みデータ部の行数。 |
private java.lang.reflect.Field[] |
fields
ファイル行オブジェクトのField情報(Annotation)を格納する変数。 |
private java.lang.String |
fileEncoding
ファイルエンコーディング。 |
private java.lang.String |
fileName
ファイルアクセスを行うファイル名。 |
private java.lang.String |
lineFeedChar
行区切り文字。 |
private java.lang.reflect.Method[] |
methods
メソッドオブジェクト |
private boolean |
writeData
データ部出力確認用フラグ。 |
private java.io.Writer |
writer
ファイルアクセス(出力)用の文字ストリーム。 |
private boolean |
writeTrailer
トレイラ部出力確認用フラグ。 |
コンストラクタの概要 | |
---|---|
AbstractFileLineWriter(java.lang.String fileName,
java.lang.Class<T> clazz,
java.util.Map<java.lang.String,ColumnFormatter> columnFormatterMap)
コンストラクタ。 |
メソッドの概要 | |
---|---|
private void |
buildFields()
ファイル行オブジェクトの属性のフィールドオブジェクトの配列を生成する。 |
private void |
buildMethods()
ファイル行オブジェクトの属性のgetterメソッドのメソッドオブジェクトの配列を生成する。 |
protected void |
checkWriteTrailer()
トレイラ部の処理が終わっているかどうかを判定する。 |
void |
closeFile()
ファイルクローズ処理。 |
protected java.lang.String |
getColumn(T t,
int index)
ファイル行オブジェクトからカラムインデックスと一致する属性の値を取得する。 |
abstract char |
getDelimiter()
区切り文字を取得する。 |
abstract char |
getEncloseChar()
囲み文字を取得する。 |
protected java.lang.reflect.Field[] |
getFields()
ファイル行オブジェクトのField情報(Annotation)を格納する変数を取得する。 |
java.lang.String |
getFileName()
ファイル名を取得する。 |
protected java.lang.String |
getLineFeedChar()
行区切り文字を設定する。 |
protected java.lang.reflect.Method[] |
getMethods()
ファイル行オブジェクトのField情報に対応するgetterメソッドを格納する変数を取得する。 |
protected java.io.Writer |
getWriter()
ファイルアクセス(出力)用の文字ストリームを取得する。 |
protected void |
init()
初期化処理。 |
protected boolean |
isCheckByte(OutputFileColumn outputFileColumn)
バイト数チェックを行うかどうか。 |
void |
printDataLine(T t)
データ部への書き込み処理。 |
void |
printHeaderLine(java.util.List<java.lang.String> headerLine)
ヘッダ部への書込み処理。 |
private void |
printList(java.util.List<java.lang.String> stringList)
ヘッダ部、トレイラ部の書き込み用の共通メソッド。 |
void |
printTrailerLine(java.util.List<java.lang.String> trailerLine)
トレイラ部への書込み処理。 |
void |
setColumnFormatterMap(java.util.Map<java.lang.String,ColumnFormatter> columnFormatterMap)
カラムフォーマット(ファイル書込)処理を格納するマップを取得する。 |
protected void |
setWriteData(boolean writeData)
データ部の出力が開始されているかどうかを判定するフラグ。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
private java.io.Writer writer
private java.lang.String fileName
private java.lang.String fileEncoding
private java.lang.Class<T> clazz
private java.lang.String lineFeedChar
private java.lang.reflect.Field[] fields
private java.lang.reflect.Method[] methods
private java.util.Map<java.lang.String,ColumnFormatter> columnFormatterMap
private boolean writeData
private boolean writeTrailer
private int currentLineCount
コンストラクタの詳細 |
---|
public AbstractFileLineWriter(java.lang.String fileName, java.lang.Class<T> clazz, java.util.Map<java.lang.String,ColumnFormatter> columnFormatterMap)
fileName
- ファイル名clazz
- パラメータクラスcolumnFormatterMap
- テキスト取得ルールメソッドの詳細 |
---|
protected void init()
private void buildFields()
private void buildMethods()
public void printHeaderLine(java.util.List<java.lang.String> headerLine)
FileLineWriter<T>
内の printHeaderLine
headerLine
- ヘッダ部へ書き込む文字列のリストpublic void printDataLine(T t)
FileLineWriter<T>
内の printDataLine
t
- データ部へ書き込むファイル行オブジェクトpublic void printTrailerLine(java.util.List<java.lang.String> trailerLine)
FileLineWriter<T>
内の printTrailerLine
trailerLine
- トレイラ部へ書き込む文字列のリストprivate void printList(java.util.List<java.lang.String> stringList)
stringList
- 文字列のリストpublic void closeFile()
FileLineWriter<T>
内の closeFile
protected java.lang.String getColumn(T t, int index)
ファイル行オブジェクトからカラムインデックスと一致する属性の値を取得する。
属性を取得する際、ファイル行オブジェクトのアノテーションの記述により
t
- ファイル行オブジェクトindex
- カラムのインデックス
public java.lang.String getFileName()
protected java.lang.String getLineFeedChar()
public void setColumnFormatterMap(java.util.Map<java.lang.String,ColumnFormatter> columnFormatterMap)
columnFormatterMap
- カラムフォーマット(ファイル書込)を格納するマップprotected java.io.Writer getWriter()
protected java.lang.reflect.Field[] getFields()
protected java.lang.reflect.Method[] getMethods()
protected void setWriteData(boolean writeData)
writeData
- フラグprotected void checkWriteTrailer()
public abstract char getDelimiter()
public abstract char getEncloseChar()
protected boolean isCheckByte(OutputFileColumn outputFileColumn)
outputFileColumn
- 出力カラム
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |