@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 - 書き込むデータファイルのファイル名FileRecordWriterpublic static FileRecordWriter get(java.lang.String basePathName, java.lang.String fileName)
FilePathSettingに設定した論理名(論理ベースパス)配下のファイルに書き出しを行うFileRecordWriterを取得する。basePathName - 書き込むデータファイルのベースパスの論理名fileName - 書き込むデータファイルのファイル名FileRecordWriterjava.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をカレントスレッド上から削除する。