クラス FileWhereTag

  • すべての実装されたインタフェース:
    Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally

    public class FileWhereTag
    extends CommonTagSupport
    fileOption でファイルを検索する場合の条件を指定するタグです。
    関連項目:
    直列化された形式
    変更履歴:
    2.1.1.0 (2002/11/11) 新規作成, 4.0.0.0 (2005/01/31) 内部ロジックの全面見直し, 7.2.6.0 (2020/06/30) 内部ロジックの全面見直し
    機能分類
    その他入力
    形式サンプル:
    ●形式:<og:fileWhere name="…" startsWith="…" endsWith="…" … /> ●body:なし ●Tag定義: <og:fileWhere startsWith 【TAG】指定された接頭辞で始まる場合、スルー(選択)されます(初期値:null) unStartsWith 【TAG】(追加:7.2.6.0 (2020/06/30))指定された接頭辞で始まらない場合、スルー(選択)されます(初期値:null) startsDir 【TAG】(追加:7.2.6.0 (2020/06/30))指定された接頭辞で始まるフォルダ場合、スルー(選択)されます(初期値:null) unStartsDir 【TAG】(追加:7.2.6.0 (2020/06/30))指定された接頭辞で始まらないフォルダ場合、スルー(選択)されます(初期値:null) endsWith 【TAG】指定された接頭辞で終わる場合、スルー(選択)されます(初期値:null) unEndsWith 【TAG】(追加:7.2.6.0 (2020/06/30))指定された接頭辞で終わらない場合、スルー(選択)されます(初期値:null) instr 【TAG】指定された文字列がファイル名に含まれる場合、スルー(選択)されます(初期値:null) unInstr 【TAG】(追加:7.2.6.0 (2020/06/30))指定された文字列がファイル名に含まれない場合、スルー(選択)されます(初期値:null) instrDir 【TAG】(追加:7.2.6.0 (2020/06/30))指定された文字列がフォルダ名に含まれる場合、スルー(選択)されます(初期値:null) unInstrDir 【TAG】(追加:7.2.6.0 (2020/06/30))指定された文字列がフォルダ名に含まれない場合、スルー(選択)されます(初期値:null) × equals 【廃止】ファイル名が一致する場合、スルー(選択)されます(初期値:null) 7.2.7.0 (2020/08/07) fileEquals 【TAG】ファイル名が一致する場合、スルー(選択)されます(初期値:null) 7.2.7.0 (2020/08/07) 新規 unFileEquals 【TAG】(追加:7.2.6.0 (2020/06/30))ファイル名が一致しない場合、スルー(選択)されます(初期値:null) matches 【TAG】ファイル名が、指定された正規表現と一致する場合、スルー(選択)されます(初期値:null) unMatches 【TAG】ファイル名が、指定された正規表現と一致しない場合、スルー(選択)されます(初期値:null) matchDir 【TAG】(追加:7.2.6.0 (2020/06/30))フォルダ名が、指定された正規表現と一致する場合、スルー(選択)されます(初期値:null) unMatchDir 【TAG】(追加:7.2.6.0 (2020/06/30))フォルダ名が、指定された正規表現と一致しない場合、スルー(選択)されます(初期値:null) lastModified 【TAG】指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます(初期値:null) unLastModified 【TAG】(追加:7.2.6.0 (2020/06/30))指定のタイムスタンプ以前に変更されている場合、スルー(選択)されます(初期値:null) isLarger 【TAG】指定の大きさより大きいファイルの場合、スルー(選択)されます(初期値:null) isSmaller 【TAG】指定の大きさより小さいファイルの場合、スルー(選択)されます(初期値:null) isHidden 【TAG】true:HIDDENファイルのみ/false:NORMALファイルのみスルー(選択)されます(初期値:null) × useDir 【廃止】(廃止:7.2.6.0 (2020/06/30))判定をファイルだけでなく、ディレクトリでも行うかどうかを指定[false:File/true:File+Dir/only:Dir](初期値:false) ignoreCase 【TAG】大文字/小文字を区別しないかどうか[true/false]を指定します(初期値:false(区別する)) notEquals 【TAG】判定結果を反転させるかどうか[true/false]を指定します(初期値:false) 6.8.0.0 (2017/06/02) caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) 6.8.0.0 (2017/06/02) caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) 6.8.0.0 (2017/06/02) caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) 6.8.0.0 (2017/06/02) caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) 6.8.0.0 (2017/06/02) caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない) 6.8.0.0 (2017/06/02) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) /> ●使用例 <og:fileOption select="NAME" from="./jsp" > <og:fileWhere startsWith = "File" :指定された接頭辞で始まる場合、選択される endsWith = ".java" :指定された接頭辞で終わる場合、選択される instr = "Tag" :指定された文字列がファイル名に含まれる場合、選択される equalsName = "FileWhereTag.java" :ファイル名が一致する場合、選択される(大文字小文字は区別しない) matches = "File*Tag" :ファイル名が、指定された正規表現と一致する場合、選択される(大文字小文字は区別しない) unMatches = "File*Tag" :ファイル名が、指定された正規表現と一致しない場合、選択される(大文字小文字は区別しない) lastModified = "20050101" :指定のタイムスタンプ以後に変更された場合、選択される 日付けの指定は、YYYYMMDD 形式, TODAY , YESTERDAY が使用できます。 isLarger = "1024" :指定の大きさ(バイト単位)より大きいファイルの場合、選択される isSmaller = "1024" :指定の大きさ(バイト単位)より小さいファイルの場合、選択される isHidden = "true" :true:HIDDENファイルのみ選択される useDir = "false" :(廃止)フィルタによる対象の絞込みをディレクトリにも適用するかどうか /> </og:fileOption> ・検索条件が入力された時 条件を満足して全てのファイルを列挙します。 ・検索条件が入力されなかった時 該当ディレクトリ内の全てのファイルを列挙します。
    バージョン
    7.2
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK11.0,
    • コンストラクタの詳細

      • FileWhereTag

        public FileWhereTag()
        デフォルトコンストラクター
        変更履歴:
        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
    • メソッドの詳細

      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 5.1.2.0 (2010/01/01) unMatches メソッドで反転属性の追加, 5.3.9.0 (2011/09/01) useDir属性を追加, 5.6.6.0 (2013/07/05) unMatchesの引数間違いの訂正, 5.7.5.0 (2014/04/04) isHidden属性を追加します。, 6.3.1.1 (2015/07/10) メソッドチェーン化と、大文字/小文字の区別なし(ignoreCase=true)対応, 6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。, 6.8.0.0 (2017/06/02) caseKey,caseVal,caseNN,caseNull 属性を追加, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。, 7.2.6.2 (2020/07/29) unEquals対応忘れ
      • release2

        protected void release2()
        タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
        オーバーライド:
        release2 クラス内 CommonTagSupport
        変更履歴:
        2.0.0.4 (2002/09/27) カスタムタグの release() メソッドを、追加, 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 4.0.0.0 (2005/01/31) 内部ロジックの全面見直し, 5.3.9.0 (2011/09/01) useDir属性追加, 5.7.4.3 (2014/03/28) isLarger,isSmaller属性を文字列に変更, 5.7.5.0 (2014/04/04) isHidden属性を追加, 6.3.1.1 (2015/07/10) 大文字/小文字の区別なし(ignoreCase=true)対応, 6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。, 6.8.0.0 (2017/06/02) notEquals 属性追加 , useDir="false" の初期値設定, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。, 7.2.6.2 (2020/07/29) unEquals対応忘れ
      • setStartsWith

        public void setStartsWith​(String prefix)
        【TAG】指定された接頭辞で始まる場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        prefix - 接頭辞
        関連項目:
        String.startsWith(String)
        説明:
        引数が null の場合は、追加しません。
      • setUnStartsWith

        public void setUnStartsWith​(String prefix)
        【TAG】指定された接頭辞で始まらない場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        prefix - 接頭辞
        関連項目:
        String.startsWith(String)
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        引数が null の場合は、追加しません。
      • setStartsDir

        public void setStartsDir​(String prefix)
        【TAG】指定された接頭辞で始まるフォルダ場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        prefix - 接頭辞
        関連項目:
        String.startsWith(String)
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        引数が null の場合は、追加しません。
      • setUnStartsDir

        public void setUnStartsDir​(String prefix)
        【TAG】指定された接頭辞で始まらないフォルダ場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        prefix - 接頭辞
        関連項目:
        String.startsWith(String)
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        引数が null の場合は、追加しません。
      • setEndsWith

        public void setEndsWith​(String suffix)
        【TAG】指定された接頭辞で終わる場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        suffix - 接尾辞
        関連項目:
        String.endsWith(String)
        説明:
        引数が null の場合は、追加しません。
      • setUnEndsWith

        public void setUnEndsWith​(String suffix)
        【TAG】指定された接頭辞で終わらない場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        suffix - 接尾辞
        関連項目:
        String.endsWith(String)
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        引数が null の場合は、追加しません。
      • setInstr

        public void setInstr​(String str)
        【TAG】指定された文字列がファイル名に含まれる場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - 指定の部分文字列
        説明:
        引数が null の場合は、追加しません。
      • setUnInstr

        public void setUnInstr​(String str)
        【TAG】指定された文字列がファイル名に含まれない場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - 指定の部分文字列
        関連項目:
        String.endsWith(String)
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        引数が null の場合は、追加しません。
      • setInstrDir

        public void setInstrDir​(String str)
        【TAG】指定された文字列がフォルダ名に含まれる場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - 指定の部分文字列
        関連項目:
        String.endsWith(String)
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        引数が null の場合は、追加しません。
      • setUnInstrDir

        public void setUnInstrDir​(String str)
        【TAG】指定された文字列がフォルダ名に含まれない場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - 指定の部分文字列
        関連項目:
        String.endsWith(String)
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        引数が null の場合は、追加しません。
      • setFileEquals

        public void setFileEquals​(String str)
        【TAG】ファイル名が一致する場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - ファイル名文字列
        関連項目:
        String.equals(Object)
        説明:
        大文字小文字は区別しません。 引数が null の場合は、追加しません。
      • setUnFileEquals

        public void setUnFileEquals​(String str)
        【TAG】ファイル名が一致しない場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - ファイル名文字列
        関連項目:
        String.equals(Object)
        変更履歴:
        7.2.6.2 (2020/07/29) unEquals対応忘れ
        説明:
        大文字小文字は区別しません。 引数が null の場合は、追加しません。
      • setMatches

        public void setMatches​(String str)
        【TAG】ファイル名が、指定された正規表現と一致する場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - ファイル名文字列(正規表現)
        関連項目:
        Pattern.compile(String,int), Matcher.find()
        説明:
        ignoreCase を使用する場合、Pattern.CASE_INSENSITIVE を適用します。 Pattern.compile( str,Pattern.CASE_INSENSITIVE ) ; pattern.matcher( pathname.getName() ).find() == true と同じ結果が得られます。 引数が null の場合は、追加しません。
      • setUnMatches

        public void setUnMatches​(String str)
        【TAG】ファイル名が、指定された正規表現と一致しない場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - ファイル名文字列(不一致させる正規表現)
        関連項目:
        Pattern.compile(String,int), Matcher.find()
        説明:
        ignoreCase を使用する場合、Pattern.CASE_INSENSITIVE を適用します。 Pattern.compile( str,Pattern.CASE_INSENSITIVE ) ; pattern.matcher( pathname.getName() ).find() == false と同じ結果が得られます。 引数が null の場合は、追加しません。
      • setMatchDir

        public void setMatchDir​(String str)
        【TAG】フォルダ名が、指定された正規表現と一致する場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - ファイル名文字列(正規表現)
        関連項目:
        Pattern.compile(String,int), Matcher.find()
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        ignoreCase を使用する場合、Pattern.CASE_INSENSITIVE を適用します。 Pattern.compile( str,Pattern.CASE_INSENSITIVE ) ; pattern.matcher( pathname.getName() ).find() == true と同じ結果が得られます。 引数が null の場合は、追加しません。
      • setUnMatchDir

        public void setUnMatchDir​(String str)
        【TAG】フォルダ名が、指定された正規表現と一致しない場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        str - ファイル名文字列(正規表現)
        関連項目:
        Pattern.compile(String,int), Matcher.find()
        変更履歴:
        7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        ignoreCase を使用する場合、Pattern.CASE_INSENSITIVE を適用します。 Pattern.compile( str,Pattern.CASE_INSENSITIVE ) ; pattern.matcher( pathname.getName() ).find() == true と同じ結果が得られます。 引数が null の場合は、追加しません。
      • setLastModified

        public void setLastModified​(String modify)
        【TAG】指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        modify - YYYYMMDD形式の指定日
        説明:
        ディレクトリは、ここの判定では無視します。(必ず true を返します) 日付けの指定に、YYYYMMDD 形式の 8文字数字文字列以外に、 TODAY や YESTERDAY なども使用できます。 TODAY は、実行日の 00:00:00 を基準時刻とし、YESTERDAY は、その前日になります。 引数が null の場合は、追加しません。 YYYYMMDD YYYYMMDD形式の指定日の 00:00:00 を基準時刻 TODAY 実行日の 00:00:00 を基準時刻 YESTERDAY 実行日前日の 00:00:00 を基準時刻 LAST_WEEK 実行日の先週(7日前) 00:00:00 を基準時刻 MONTH 実行月の 1日 00:00:00 を基準時刻 LAST_MONTH 実行前月の 同日 00:00:00 を基準時刻 LAST_YEAR 実行前年の 同月同日 00:00:00 を基準時刻
      • setUnLastModified

        public void setUnLastModified​(String modify)
        【TAG】指定のタイムスタンプ以前に変更されている場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        modify - YYYYMMDD形式の指定日
        説明:
        ディレクトリは、ここの判定では無視します。(必ず true を返します) 日付けの指定のフォーマットは、lastModifiedと同じ記号が使用できます。 LAST_YEAR 実行前年の 同月同日 00:00:00 を基準時刻
      • setIsLarger

        public void setIsLarger​(String len)
        【TAG】指定の大きさより大きいファイルの場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        len - ファイルの大きさ(バイト単位)
        説明:
        ファイルの大きさ(バイト単位)は同値を含みます。 未指定の場合は、スルー(選択)されます。 指定はバイト単位ですが、**KB , **MB , **GB などの単位を付ける事も可能です。 現時点では、K , KB , M , MB , G , GB のみ指定可能です。
      • setIsSmaller

        public void setIsSmaller​(String len)
        【TAG】指定の大きさより小さいファイルの場合、スルー(選択)されます(初期値:null)。
        パラメータ:
        len - ファイルの大きさ(バイト単位)
        説明:
        ファイルの大きさ(バイト単位)は同値を含みません。 未指定の場合は、スルー(選択)されます。 指定はバイト単位ですが、**KB , **MB , **GB などの単位を付ける事も可能です。 現時点では、K , KB , M , MB , G , GB のみ指定可能です。
      • setIsHidden

        public void setIsHidden​(String flag)
        【TAG】対象に隠しファイル(hidden)を、スルー(選択)する場合、true を指定します(初期値:null)。
        パラメータ:
        flag - hidden対象 [true:する/false:しない]
        変更履歴:
        5.7.5.0 (2014/04/04) 新規作成
        説明:
        trueを指定すると、隠しファイル(hidden)のみ選択します。 falseを指定すると、隠しファイル(hidden)以外を選択します。 隠しファイルかどうかの定義はOSに従います。 初期値は、両方とも選択する為、null (trueでもfalseでもない)です。
      • setUseDir

        public void setUseDir​(String flag)
        【廃止】フィルタによる対象の絞込みをディレクトリにも適用するかどうか[false:File/true:File+Dir/only:Dir]を指定します(初期値:false:しない)。
        パラメータ:
        flag - ディレクトリ適用 [true:する/false:しない]
        変更履歴:
        5.3.9.0 (2011/09/01) 新規作成, 6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
        説明:
        このフラグは、設定したすべての属性に対して一律に作用します。 個々に適用するには、それぞれの属性のxxxDir などを使用してください。 初期値は、false(ディレクトリはフィルタによる絞込みをしない)です。
      • setIgnoreCase

        public void setIgnoreCase​(String flag)
        【TAG】大文字/小文字を区別しないかどうか[true/false]を指定します(初期値:false(区別する))。
        パラメータ:
        flag - 大文字/小文字を区別しないかどうか [true:しない/それ以外:する]
        変更履歴:
        6.3.1.1 (2015/07/10) 大文字/小文字の区別なし(ignoreCase=true)対応
        説明:
        startsWith , contains , endsWith , equalsIgnoreCase での比較時に、比較対象の 大文字/小文字を区別しないかどうかを指定します。 区別しない ("true") 場合、aaa と AAA は、一致したとみなされます。 初期値は、区別する ("false") です。
      • setNotEquals

        public void setNotEquals​(String flag)
        【TAG】判定結果を反転させるかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        flag - 判定結果反転 [true:反転する/それ以外:通常]
        変更履歴:
        6.8.0.0 (2017/06/02) 新規追加
        説明:
        通常の判定結果において、結果の正反対の処理を行います。 初期値は、通常 (false)です。
      • toString

        public String toString()
        このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
        オーバーライド:
        toString クラス内 CommonTagSupport
        戻り値:
        String型。このクラスの文字列表現
        このメソッドは、nullを返しません