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