public abstract class StructuredDataRecordFormatterSupport extends DataRecordFormatterSupport
本クラスはスレッドセーフを考慮した実装にはなっていないので、呼び出し元で同期化の制御を行うこと。
ディレクティブの設定XMLデータを読み込む際は、以下のディレクティブの設定が必須となる。
| 修飾子とタイプ | クラスと説明 | 
|---|---|
static class  | 
StructuredDataRecordFormatterSupport.StructuredDataDirective
XMLデータフォーマッタが使用するディレクティブの名前と値の型。 
 | 
DataRecordFormatterSupport.Directive| コンストラクタと説明 | 
|---|
StructuredDataRecordFormatterSupport()  | 
| 修飾子とタイプ | メソッドと説明 | 
|---|---|
void | 
close()
内部的に保持している各種リソースを開放する。 
 | 
ConvertorSetting | 
getConvertorSetting()
構造化データのコンバータの設定情報保持クラスを取得する。 
 | 
protected StructuredDataBuilder | 
getDataBuilder()
構造化データビルダーを返却する 
 | 
protected StructuredDataParser | 
getDataParser()
構造化データパーサーを返却する 
 | 
boolean | 
hasNext()
次に読み込む行の有無を判定する。 
 | 
DataRecordFormatter | 
initialize()
フォーマット定義情報保持クラスの初期化を行う。 
 | 
DataRecord | 
readRecord()
入力ストリームから1レコード分のデータを読み込み、データレコードを返却する。 
 | 
protected void | 
setConvertorSetting(ConvertorSetting convertorSetting)
構造化データのコンバータの設定情報保持クラスを取得する。 
 | 
void | 
setDataBuilder(StructuredDataBuilder dataBuilder)
構造化データビルダーを設定する 
 | 
void | 
setDataParser(StructuredDataParser dataParser)
構造化データパーサーを設定する 
 | 
DataRecordFormatter | 
setInputStream(java.io.InputStream stream)
入力ストリームを設定する。 
 | 
DataRecordFormatter | 
setOutputStream(java.io.OutputStream stream)
出力ストリームを設定する。 
 | 
void | 
writeRecord(java.util.Map<java.lang.String,?> record)
出力ストリームに1レコード分の内容を書き込む。 
 | 
void | 
writeRecord(java.lang.String recordType,
           java.util.Map<java.lang.String,?> record)
指定したデータレイアウト(レコードタイプ)で、出力ストリームに1レコード分の内容を書き込む。 
 | 
addConvertorToField, addFormatAndRecordNumberTo, createCharacterReplacer, createDirectiveMap, getDefaultEncoding, getDefinition, getFileType, getMimeType, getRecordNumber, getRecordSeparator, incrementRecordNumber, initializeClassifier, initializeDefinition, initializeField, initializeFieldDefinition, newInvalidDataFormatException, setAllowedRecordSeparatorList, setDataTypeProperty, setDefaultReplacementType, setDefinition, setFieldProperty, setRecordNumber, setValueConvertorProperty, validateDirectives, validateDirectivesDataType, validatePosition, validateRecordLengthpublic void setDataParser(StructuredDataParser dataParser)
dataParser - 構造化データパーサーprotected StructuredDataParser getDataParser()
public void setDataBuilder(StructuredDataBuilder dataBuilder)
dataBuilder - 構造化データビルダーprotected StructuredDataBuilder getDataBuilder()
public ConvertorSetting getConvertorSetting()
getConvertorSetting クラス内 DataRecordFormatterSupportprotected void setConvertorSetting(ConvertorSetting convertorSetting)
convertorSetting - 構造化データのコンバータの設定情報保持クラスpublic DataRecordFormatter initialize()
initialize インタフェース内 DataRecordFormatterinitialize クラス内 DataRecordFormatterSupportpublic DataRecordFormatter setInputStream(java.io.InputStream stream)
stream - 入力ストリームpublic DataRecordFormatter setOutputStream(java.io.OutputStream stream)
stream - 出力ストリームpublic DataRecord readRecord() throws java.io.IOException, InvalidDataFormatException
nullを返却する。java.io.IOException - 入力ストリームの読み込みに失敗した場合InvalidDataFormatException - 読み込んだデータがフォーマット定義に違反している場合public void writeRecord(java.util.Map<java.lang.String,?> record)
                 throws java.io.IOException,
                        InvalidDataFormatException
Mapの内容をもとに自動的に判定される。
 
 引数がDataRecord型かつレコードタイプが指定されている場合、
 フォーマット定義ファイルのレコードタイプ識別フィールド定義よりも、指定されたレコードタイプを優先して書き込みを行う。record - 出力するレコードの内容を格納したMapjava.io.IOException - 出力ストリームの書き込みに失敗した場合InvalidDataFormatException - 書き込むデータの内容がフォーマット定義に違反している場合public void writeRecord(java.lang.String recordType,
                        java.util.Map<java.lang.String,?> record)
                 throws java.io.IOException
recordType - レコードタイプrecord - 出力するレコードの内容を格納したMapjava.io.IOException - 出力ストリームの書き込みに失敗した場合public void close()
setInputStream(java.io.InputStream)メソッドおよびsetOutputStream(java.io.OutputStream)メソッドで渡されたストリームをクローズする。public boolean hasNext()
                throws java.io.IOException
truejava.io.IOException - 入力ストリームの読み込みに失敗した場合