クラス Process_FileCopy
java.lang.Object
org.opengion.fukurou.process.AbstractProcess
org.opengion.fukurou.process.Process_FileCopy
- すべての実装されたインタフェース:
ChainProcess
,HybsProcess
Process_FileCopy は、上流から受け取った FileLineModel を処理する、
ChainProcess インターフェースの実装クラスです。
上流から受け取った FileLineModel の ファイルから、inPath の共通パス
以下のファイルを、outPath の共通パス以下にコピーします。
コピーの種類は、バイナリか、テキストで、テキストの場合は、エンコード
変換も行うことが可能です。
inPath と outPath が同じ、または、outPath が未設定の場合は、入力と出力が
同じですので、自分自身のエンコード変換処理を行うことになります。
コピーされるファイルのファイル名は、入力ファイル名と同一です。保存される
フォルダが異なります。(同一にすることも可能です。)
useOmitCmnt=true に設定すると、ファイル中のコメントを除外してコピーします。
ただし、使用できるのは、アスキーファイル(binary=false)の時だけです。
上流プロセスでは、Name 属性として、『File』を持ち、値は、Fileオブジェクト
である、Process_FileSearch を使用するのが、便利です。それ以外のクラスを
使用する場合でも、Name属性と、File オブジェクトを持つ LineModel を受け渡し
できれば、使用可能です。
引数文字列中に空白を含む場合は、ダブルコーテーション("") で括って下さい。
引数文字列の 『=』 の前後には、空白は挟めません。必ず、-key=value の様に
繋げてください。
- 形式サンプル:
- Process_FileCopy -inPath=入力共通パス -inEncode=Windows-31J -outPath=出力共通パス -outEncode=UTF-8 -inPath=入力共通パス :上流で検索されたファイルパスの共通部分 [ -inEncode=入力エンコード ] :入力ファイルのエンコードタイプ [ -outPath=出力共通パス ] :出力するファイルパスの共通部分 [ -outEncode=出力エンコード ] :出力ファイルのエンコードタイプ [ -binary=[false/true] ] :trueは、バイナリファイルのコピー(初期値:false) [ -changeCrLf=[false/true] ] :trueは、バイナリファイルのコピー時にCR+LFに変換します(初期値:false) [ -keepTimeStamp=[false/true]] :trueは、コピー元のファイルのタイムスタンプで作成します(初期値:false) [ -useOmitCmnt=[false/true] ] :ファイル中のコメントを除外してコピーを行うかどうかを指定(初期値:false) [ -display=[false/true] ] :trueは、コピー状況を表示します(初期値:false) [ -debug=[false/true] ] :デバッグ情報を標準出力に表示する(true)かしない(false)か(初期値:false[表示しない])
- 導入されたバージョン:
- JDK5.0,
-
フィールドの概要
クラスから継承されたフィールド org.opengion.fukurou.process.AbstractProcess
BUFFER_LARGE, BUFFER_MIDDLE, CHAIN_FILE_USAGE, CR, DB_BATCH_SIZE, DB_PARAM_USAGE, PROCESS_PARAM_USAGE, TAB
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
クラスから継承されたメソッド org.opengion.fukurou.process.AbstractProcess
getArgument, logging, println, putArgument, putArgument, setLoggerProcess, throwException, throwException, toString
クラスから継承されたメソッド java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
インタフェースから継承されたメソッド org.opengion.fukurou.process.HybsProcess
logging, println, putArgument, putArgument, setLoggerProcess
-
コンストラクタの詳細
-
Process_FileCopy
public Process_FileCopy()デフォルトコンストラクター。 このクラスは、動的作成されます。デフォルトコンストラクターで、 super クラスに対して、必要な初期化を行っておきます。
-
-
メソッドの詳細
-
init
プロセスの初期化を行います。初めに一度だけ、呼び出されます。 初期処理(ファイルオープン、DBオープン等)に使用します。- 定義:
init
インタフェース内HybsProcess
- パラメータ:
paramProcess
- データベースの接続先情報などを持っているオブジェクト- 変更履歴:
- 4.2.2.0 (2008/05/10) changeCrLf 属性対応, 5.1.5.0 (2010/04/01) keepTimeStamp 属性の追加
-
end
プロセスの終了を行います。最後に一度だけ、呼び出されます。 終了処理(ファイルクローズ、DBクローズ等)に使用します。- 定義:
end
インタフェース内HybsProcess
- パラメータ:
isOK
- トータルで、OKだったかどうか[true:成功/false:失敗]
-
action
引数の LineModel を処理するメソッドです。 変換処理後の LineModel を返します。 後続処理を行わない場合(データのフィルタリングを行う場合)は、 null データを返します。つまり、null データは、後続処理を行わない フラグの代わりにも使用しています。 なお、変換処理後の LineModel と、オリジナルの LineModel が、 同一か、コピー(クローン)かは、各処理メソッド内で決めています。 ドキュメントに明記されていない場合は、副作用が問題になる場合は、 各処理ごとに自分でコピー(クローン)して下さい。- 定義:
action
インタフェース内ChainProcess
- パラメータ:
data
- オリジナルのLineModel- 戻り値:
- 処理変換後のLineModel
- 変更履歴:
- 4.0.0.0 (2007/11/28) メソッドの戻り値をチェックします。, 4.2.2.0 (2008/05/10) changeCrLf 属性対応, 4.2.3.0 (2008/05/26) LineModel が FileLineModel でない場合の処理, 5.1.5.0 (2010/04/01) keepTimeStamp 属性の追加, 5.1.6.0 (2010/05/01) changeCrLf 属性が、.FileUtil#changeCrLfcopy メソッドへの移動に伴う対応, 5.7.2.2 (2014/01/24) エラー時にデータも出力します。, 6.3.1.0 (2015/06/28) nioを使用すると UTF-8とShuft-JISで、エラーになる。, 6.4.0.2 (2015/12/11) CommentLineParser 改造。, 6.4.7.1 (2016/06/17) エンコードエラーの緩和。, 8.5.3.2 (2023/10/13) JDK21対応。FileLineModel の修正に伴う変更。, 8.5.4.2 (2024/01/12) PMD 7.0.0 CloseResource 対応
-
report
プロセスの処理結果のレポート表現を返します。 処理プログラム名、入力件数、出力件数などの情報です。 この文字列をそのまま、標準出力に出すことで、結果レポートと出来るような 形式で出してください。- 定義:
report
インタフェース内HybsProcess
- 戻り値:
- 処理結果のレポート
-
usage
このクラスの使用方法を返します。- 定義:
usage
インタフェース内HybsProcess
- 戻り値:
- このクラスの使用方法
- このメソッドは、nullを返しません
-
main
このクラスは、main メソッドから実行できません。- パラメータ:
args
- コマンド引数配列
-