クラス Process_FileSearch

  • すべての実装されたインタフェース:
    ChainProcess, FirstProcess, HybsProcess

    public class Process_FileSearch
    extends AbstractProcess
    implements FirstProcess, ChainProcess
    Process_FileSearch は、指定のフォルダ以下のファイルを一覧する、FirstProcess インターフェースと、ChainProcess インターフェースの実装クラスです。 Fileリストは、FileLineModel オブジェクトを使用します。 ファイル属性(Level,File,Length,Modify,LineCnt,Biko,MD5) と、 オプションで、FILEPATH,ADDRESS,FILENAME 属性を文字列で準備できます。 指定の条件に合致するファイルを検索し、LineModel のサブクラスである、 FileLineModel オブジェクトを作成して、下流に渡します。 FileLineModel オブジェクトには、ファイル属性(Level,File,Length,Modify) が設定されます。 引数文字列中にスペースを含む場合は、ダブルコーテーション("") で括って下さい。 引数文字列の 『=』の前後には、スペースは挟めません。必ず、-key=value の様に 繋げてください。 ※ 6.3.1.1 (2015/07/10) ignoreCase の導入と同時に、初期値を、Grep , GrepChange , GrepChangeExcel と『異なる』 true:区別しない にしました。 これは、混乱する可能性が高いのですが、ファイル関連の検索において、通常は、大文字小文字の 区別なしで検索するのが多く、Grep の区別するケースとは異なると判断しました。 実際は、ignoreCase 属性を毎回記述したくないというのが、本当の所です。 ※ 6.4.0.2 (2015/12/11) prefix,suffix,instr,equals に、("|"で複数指定可) の説明をJavaDocに追加。 useDIR 属性に、onlyパラメータを追加[false:File/true:File+Dir/only:Dir]。 ※ 7.2.6.0 (2020/06/30) useDIR 属性は廃止。
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • Process_FileSearch

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

      • init

        public void init​(ParamProcess paramProcess)
        プロセスの初期化を行います。初めに一度だけ、呼び出されます。 初期処理(ファイルオープン、DBオープン等)に使用します。
        定義:
        init インタフェース内 HybsProcess
        パラメータ:
        paramProcess - データベースの接続先情報などを持っているオブジェクト
      • next

        public boolean next()
        このデータの処理において、次の処理が出来るかどうかを問い合わせます。 この呼び出し1回毎に、次のデータを取得する準備を行います。
        定義:
        next インタフェース内 FirstProcess
        戻り値:
        処理できる:true / 処理できない:false
      • makeLineModel

        public LineModel makeLineModel​(int rowNo)
        最初に、 行データである LineModel を作成します FirstProcess は、次々と処理をチェインしていく最初の行データを 作成して、後続の ChainProcess クラスに処理データを渡します。
        定義:
        makeLineModel インタフェース内 FirstProcess
        パラメータ:
        rowNo - 処理中の行番号
        戻り値:
        処理変換後のLineModel
      • action

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

        public void end​(boolean isOK)
        プロセスの終了を行います。最後に一度だけ、呼び出されます。 終了処理(ファイルクローズ、DBクローズ等)に使用します。
        定義:
        end インタフェース内 HybsProcess
        パラメータ:
        isOK - トータルで、OKだったかどうか[true:成功/false:失敗]
      • report

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

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

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