@Published(tag="architect") public class FileRecordWriterHolder extends Object
FileRecordWriter
のインスタンスをスレッド毎に管理するクラス。
スレッド毎に管理するFileRecordWriter
インスタンスの生成及び取得、クローズ機能を持つ。
FileRecordWriterDisposeHandler
をハンドラとして設定する場合、
本クラスがスレッド上で管理するすべてのFileRecordWriter
がFileRecordWriterDisposeHandler
により自動的にクローズされるので、
業務アプリケーションで本クラスのFileRecordWriterHolder.close(java.lang.String)
メソッドを呼び出す必要はない。FileRecordWriter
修飾子とタイプ | メソッドと説明 |
---|---|
static void |
close(String fileName)
FilePathSetting から"output"という論理名で取得したベースパス配下のファイルに書き出しを行うFileRecordWriter をクローズし、
インスタンスをカレントスレッド上から削除する。 |
static void |
close(String basePathName,
String fileName)
FilePathSetting に設定した論理名(論理ベースパス)配下のファイルに書き出しを行うFileRecordWriter をクローズし、
インスタンスをカレントスレッド上から削除する。 |
static void |
closeAll()
本クラスがカレントスレッド上で管理している全ての
FileRecordWriter のファイルストリームを
クローズし、また、それら全てのFileRecordWriter をカレントスレッド上から削除する。 |
protected FileRecordWriter |
createFileRecordWriter(String dataFileBasePathName,
String dataFileName,
String layoutFileBasePathName,
String layoutFileName,
int bufferSize)
FileRecordWriter のインスタンスを生成する。 |
protected String |
createKey(String basePathName,
String fileName)
スレッドに保持するキーを生成する。
|
static FileRecordWriter |
get(String fileName)
FilePathSetting から"output"という論理名で取得したベースパス配下のファイルに書き出しを行うFileRecordWriter を取得する。 |
static FileRecordWriter |
get(String basePathName,
String fileName)
FilePathSetting に設定した論理名(論理ベースパス)配下のファイルに書き出しを行うFileRecordWriter を取得する。 |
static FileRecordWriterHolder |
getInstance()
本クラスのインスタンスを
SystemRepository より取得する。 |
static void |
open(String dataFileName,
String layoutFileName)
FilePathSetting から"output"という論理名で取得したベースパス配下のファイルをオープンする。 |
static void |
open(String dataFileName,
String layoutFileName,
int bufferSize)
FilePathSetting から"output"という論理名で取得したベースパス配下のファイルをオープンする。 |
static void |
open(String dataFileBasePathName,
String dataFileName,
String layoutFileName)
FilePathSetting に設定した論理名(論理ベースパス)配下のファイルをオープンする。 |
static void |
open(String dataFileBasePathName,
String dataFileName,
String layoutFileName,
int bufferSize)
FilePathSetting に設定した論理名(論理ベースパス)配下のファイルをオープンする。 |
static void |
open(String dataFileBasePathName,
String dataFileName,
String layoutFileBasePathName,
String layoutFileName)
FilePathSetting に設定した論理名(論理ベースパス)配下のファイルをオープンする。 |
static void |
open(String dataFileBasePathName,
String dataFileName,
String layoutFileBasePathName,
String layoutFileName,
int bufferSize)
FilePathSetting に設定した論理名(論理ベースパス)配下のファイルをオープンする。 |
static void |
write(Map<?> record,
String fileName)
FilePathSetting から"output"という論理名で取得したベースパス配下のデータファイルにレコードを出力する。 |
static void |
write(Map<?> record,
String basePathName,
String fileName)
FilePathSetting に設定した論理名(論理ベースパス)配下のデータファイルにレコードを出力する。 |
static void |
write(String recordType,
Map<?> record,
String fileName)
FilePathSetting から"output"という論理名で取得したベースパス配下のデータファイルにレコードを出力する。 |
static void |
write(String recordType,
Map<?> record,
String basePathName,
String fileName)
引数で指定したデータファイルにレコードを出力する。
|
public static FileRecordWriterHolder getInstance()
SystemRepository
より取得する。
SystemRepository
にインスタンスが存在しない場合は、クラスロード時に生成した本クラスのインスタンスを返却する。
@Published public static void open(String dataFileName, String layoutFileName)
FilePathSetting
から"output"という論理名で取得したベースパス配下のファイルをオープンする。
このとき、フォーマット定義ファイルもFilePathSetting
から"format"という論理名で取得したベースパス配下より読み込む。dataFileName
- 書き込むデータファイルのファイル名layoutFileName
- フォーマット定義ファイルのファイル名@Published public static void open(String dataFileName, String layoutFileName, int bufferSize)
FilePathSetting
から"output"という論理名で取得したベースパス配下のファイルをオープンする。
このとき、フォーマット定義ファイルもFilePathSetting
から"format"という論理名で取得したベースパス配下より読み込む。dataFileName
- 書き込むデータファイルのファイル名layoutFileName
- フォーマット定義ファイルのファイル名bufferSize
- バッファサイズ@Published public static void open(String dataFileBasePathName, String dataFileName, String layoutFileName)
FilePathSetting
に設定した論理名(論理ベースパス)配下のファイルをオープンする。
このとき、フォーマット定義ファイルはFilePathSetting
から"format"という論理名で取得したベースパス配下より読み込む。dataFileBasePathName
- 書き込むデータファイルのベースパスの論理名dataFileName
- 書き込むデータファイルのファイル名layoutFileName
- フォーマット定義ファイルのファイル名@Published public static void open(String dataFileBasePathName, String dataFileName, String layoutFileName, int bufferSize)
FilePathSetting
に設定した論理名(論理ベースパス)配下のファイルをオープンする。
このとき、フォーマット定義ファイルはFilePathSetting
から"format"という論理名で取得したベースパス配下より読み込む。dataFileBasePathName
- 書き込むデータファイルのベースパスの論理名dataFileName
- 書き込むデータファイルのファイル名layoutFileName
- フォーマット定義ファイルのファイル名bufferSize
- バッファサイズ@Published public static void open(String dataFileBasePathName, String dataFileName, String layoutFileBasePathName, String layoutFileName)
FilePathSetting
に設定した論理名(論理ベースパス)配下のファイルをオープンする。
このとき、フォーマット定義ファイルはFilePathSetting
から"format"という論理名で取得したベースパス配下より読み込む。
また、データファイルに書き込む際のバッファサイズはデフォルト値(8192B)が使用される。dataFileBasePathName
- 書き込むデータファイルのベースパスの論理名dataFileName
- 書き込むデータファイルのファイル名layoutFileBasePathName
- フォーマット定義ファイルのベースパス論理名layoutFileName
- フォーマット定義ファイルのファイル名@Published public static void open(String dataFileBasePathName, String dataFileName, String layoutFileBasePathName, String layoutFileName, int bufferSize)
FilePathSetting
に設定した論理名(論理ベースパス)配下のファイルをオープンする。
また、引数でデータファイルに書き込む際のバッファサイズと、FilePathSetting
に設定したフォーマット定義ファイルの論理名を指定する。
dataFileBasePathName
- 書き込むデータファイルのベースパスの論理名dataFileName
- 書き込むデータファイルのファイル名layoutFileBasePathName
- フォーマット定義ファイルのベースパスの論理名layoutFileName
- フォーマット定義ファイルのファイル名bufferSize
- バッファサイズIllegalArgumentException
- bufferSize
以外の引数がnullまたは空の場合IllegalStateException
- カレントスレッド上のFileRecordWriter
が既にオープンしている場合@Published public static void write(Map<?> record, String fileName)
FilePathSetting
から"output"という論理名で取得したベースパス配下のデータファイルにレコードを出力する。record
- ファイルに出力するレコードfileName
- 書き込むデータファイルのファイル名@Published public static void write(Map<?> record, String basePathName, String fileName)
FilePathSetting
に設定した論理名(論理ベースパス)配下のデータファイルにレコードを出力する。record
- ファイルに出力するレコードbasePathName
- 書き込むデータファイルのベースパスの論理名fileName
- 書き込むデータファイルのファイル名@Published public static void write(String recordType, Map<?> record, String fileName)
FilePathSetting
から"output"という論理名で取得したベースパス配下のデータファイルにレコードを出力する。
また、引数で出力するレコードのレコードタイプを指定する。
recordType
- 出力するレコードのレコードタイプrecord
- ファイルに出力するレコードfileName
- 書き込むデータファイルのファイル名@Published public static void write(String recordType, Map<?> record, String basePathName, String fileName)
recordType
- 出力するレコードのレコードタイプrecord
- ファイルに出力するレコードbasePathName
- 書き込むデータファイルのベースパスの論理名fileName
- 書き込むデータファイルのファイル名protected FileRecordWriter createFileRecordWriter(String dataFileBasePathName, String dataFileName, String layoutFileBasePathName, String layoutFileName, int bufferSize)
FileRecordWriter
のインスタンスを生成する。dataFileBasePathName
- ベースパスの論理名dataFileName
- 書き込むデータファイルのファイル名layoutFileName
- レイアウトファイル名layoutFileBasePathName
- レイアウトファイルの配置ディレクトリの論理名bufferSize
- ファイル読み込み時のバッファサイズprotected String createKey(String basePathName, String fileName)
basePathName
- ベースパスの論理名fileName
- 書き込むデータファイルのファイル名IllegalArgumentException
- basePathName
に"&"が含まれていなかった場合public static FileRecordWriter get(String fileName)
FilePathSetting
から"output"という論理名で取得したベースパス配下のファイルに書き出しを行うFileRecordWriter
を取得する。fileName
- 書き込むデータファイルのファイル名FileRecordWriter
public static FileRecordWriter get(String basePathName, String fileName)
FilePathSetting
に設定した論理名(論理ベースパス)配下のファイルに書き出しを行うFileRecordWriter
を取得する。basePathName
- 書き込むデータファイルのベースパスの論理名fileName
- 書き込むデータファイルのファイル名FileRecordWriter
IllegalArgumentException
- カレントスレッド上のFileRecordWriter
が閉じている場合public static void close(String fileName)
FilePathSetting
から"output"という論理名で取得したベースパス配下のファイルに書き出しを行うFileRecordWriter
をクローズし、
インスタンスをカレントスレッド上から削除する。fileName
- 書き込むデータファイルのファイル名public static void close(String basePathName, String fileName)
FilePathSetting
に設定した論理名(論理ベースパス)配下のファイルに書き出しを行うFileRecordWriter
をクローズし、
インスタンスをカレントスレッド上から削除する。basePathName
- 書き込むデータファイルのベースパスの論理名fileName
- 書き込むデータファイルのファイル名public static void closeAll()
FileRecordWriter
のファイルストリームを
クローズし、また、それら全てのFileRecordWriter
をカレントスレッド上から削除する。