クラス Process_TableFilter

java.lang.Object
org.opengion.fukurou.process.AbstractProcess
org.opengion.fukurou.process.Process_TableFilter
すべての実装されたインタフェース:
ChainProcess, HybsProcess

public class Process_TableFilter extends AbstractProcess implements ChainProcess
Process_TableFilter は、上流から受け取ったデータをフィルタする、 ChainProcess インターフェースの実装クラスです。 上流(プロセスチェインのデータは上流から下流へと渡されます。)から 受け取ったLineModel を元に、項目のフィルタリングを行います。 条件が成立した場合は、下流に流します。複数の条件を指定できますが、 すべて AND で判定されます。 (設定条件すべてを満たす場合のみ、下流にデータを流します。) 引数文字列中にスペースを含む場合は、ダブルコーテーション("") で括って下さい。 引数文字列の 『=』の前後には、スペースは挟めません。必ず、-key=value の様に 繋げてください。
形式サンプル:
Process_TableFilter [ -prefix_XXXX=接頭辞 ] :項目名(XXXX)が、指定の接頭辞で始まる場合、条件成立。 [ -suffix_XXXX=接尾辞 ] :項目名(XXXX)が、指定の接尾辞で終わる場合、条件成立。 [ -instr_XXXX=部分文字列 ] :項目名(XXXX)が、指定の部分文字列と一致する場合、条件成立。 [ -equals_XXXX=一致 ] :項目名(XXXX)が、文字列と一致する場合、条件成立。文字列は、大文字小文字は区別しません(equalsIgnoreCase)。 [ -match_XXXX=正規表現 ] :項目名(XXXX)が、正規表現と一致する場合、条件成立。 [ -unmatch_XXXX=正規表現 ] :項目名(XXXX)が、正規表現と一致しない場合、条件成立。 [ -const_XXXX=固定値 ] :-const_FGJ=1 項目名(XXXX)に、固定値を設定します。 [ -replace_XXXX=固定値 ] :-replace_BIKO="YYYY⇒ZZZZ" (元先指定は、⇒で区切ります。) 項目名(XXXX)の文字列から、YYYY という文字を ZZZZ に置換します。 -replace_FGJ="_:0 A:1 B:2" (元値:新値 のスペース区切り) 区切り文字に ⇒ を使用しない場合は、CASE処理を行います。 項目名(XXXX)の値を、元値 から 新値 に置換します。(完全一致) [ -display=[false/true] ] :結果を標準出力に表示する(true)かしない(false)か(初期値:false[表示しない]) [ -debug=[false/true] ] :デバッグ情報を標準出力に表示する(true)かしない(false)か(初期値:false[表示しない])
導入されたバージョン:
JDK5.0,
  • フィールド詳細

  • コンストラクタの詳細

    • Process_TableFilter

      デフォルトコンストラクター。 このクラスは、動的作成されます。デフォルトコンストラクターで、 super クラスに対して、必要な初期化を行っておきます。
  • メソッドの詳細

    • init

      public void init(ParamProcess paramProcess)
      プロセスの初期化を行います。初めに一度だけ、呼び出されます。 初期処理(ファイルオープン、DBオープン等)に使用します。
      定義:
      init インタフェース内 HybsProcess
      パラメータ:
      paramProcess - データベースの接続先情報などを持っているオブジェクト
      変更履歴:
      4.3.1.1 (2008/08/24) 置換関係対応, 5.7.2.3 (2014/01/31) replace 置換の case処理。
    • action

      public LineModel action(LineModel data)
      引数の LineModel を処理するメソッドです。 変換処理後の LineModel を返します。 後続処理を行わない場合(データのフィルタリングを行う場合)は、 null データを返します。つまり、null データは、後続処理を行わない フラグの代わりにも使用しています。 なお、変換処理後の LineModel と、オリジナルの LineModel が、 同一か、コピー(クローン)かは、各処理メソッド内で決めています。 ドキュメントに明記されていない場合は、副作用が問題になる場合は、 各処理ごとに自分でコピー(クローン)して下さい。
      定義:
      action インタフェース内 ChainProcess
      パラメータ:
      data - オリジナルのLineModel
      戻り値:
      処理変換後のLineModel
      変更履歴:
      4.3.1.1 (2008/08/24) 置換関係対応, 5.7.2.3 (2014/01/31) replace 置換の case処理。
    • end

      public void end(boolean isOK)
      プロセスの終了を行います。最後に一度だけ、呼び出されます。 終了処理(ファイルクローズ、DBクローズ等)に使用します。
      定義:
      end インタフェース内 HybsProcess
      パラメータ:
      isOK - トータルで、OKだったかどうか[true:成功/false:失敗]
      変更履歴:
      4.3.1.1 (2008/08/24) 置換関係対応, 5.7.2.3 (2014/01/31) replace 置換の case処理。
    • report

      public String report()
      プロセスの処理結果のレポート表現を返します。 処理プログラム名、入力件数、出力件数などの情報です。 この文字列をそのまま、標準出力に出すことで、結果レポートと出来るような 形式で出してください。
      定義:
      report インタフェース内 HybsProcess
      戻り値:
      処理結果のレポート
    • usage

      public String usage()
      このクラスの使用方法を返します。
      定義:
      usage インタフェース内 HybsProcess
      戻り値:
      このクラスの使用方法
      このメソッドは、nullを返しません
    • main

      public static void main(String[] args)
      このクラスは、main メソッドから実行できません。
      パラメータ:
      args - コマンド引数配列