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 - 入力ストリームの読み込みに失敗した場合