org.opengion.hayabusa.taglib

## クラス FileWhereTag

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - javax.servlet.jsp.tagext.BodyTagSupport
    - - org.opengion.hayabusa.taglib.CommonTagSupport
      - - org.opengion.hayabusa.taglib.FileWhereTag

- すべての実装されたインタフェース:
    Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally

      public class FileWhereTag
      extends CommonTagSupport

       fileOption でファイルを検索する場合の条件を指定するタグです。

  関連項目:
    直列化された形式
  形式サンプル:

         ●形式：<og:fileWhere name="…" startsWith="…" endsWith="…" … />
         ●body：なし

         ●Tag定義：
           <og:fileWhere
               startsWith         【TAG】指定された接頭辞で始まる場合、スルー(選択)されます(初期値:null)
               endsWith           【TAG】指定された接頭辞で終わる場合、スルー(選択)されます(初期値:null)
               instr              【TAG】指定された文字列がファイル名に含まれる場合、スルー(選択)されます(初期値:null)
               equals             【TAG】ファイル名が一致する場合、スルー(選択)されます(初期値:null)
               matches            【TAG】ファイル名が、指定された正規表現と一致する場合、スルー(選択)されます(初期値:null)
               unMatches          【TAG】ファイル名が、指定された正規表現と一致しない場合、スルー(選択)されます(初期値:null)
               lastModified       【TAG】指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます(初期値:null)
               isLarger           【TAG】指定の大きさより大きいファイルの場合、スルー(選択)されます(初期値:null)
               isSmaller          【TAG】指定の大きさより小さいファイルの場合、スルー(選択)されます(初期値:null)
               isHidden           【TAG】true:HIDDENファイルのみ/false:NORMALファイルのみスルー(選択)されます(初期値:null)
               useDir             【TAG】判定をファイルだけでなく、ディレクトリでも行うかどうかを指定[false:File/true:File+Dir/only:Dir](初期値:false)
               ignoreCase         【TAG】大文字/小文字を区別しないかどうか[true/false]を指定します(初期値:false(区別する))
               debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
           />

         ●使用例
             <og:fileOption select="NAME" from="./jsp" >
                 <og:fileWhere
                     startsWith = "File"          :指定された接頭辞で始まる場合、選択される
                     endsWith   = ".java"         :指定された接頭辞で終わる場合、選択される
                     instr      = "Tag"           :指定された文字列がファイル名に含まれる場合、選択される
                     equals     = "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>

               ・検索条件が入力された時
                 条件を満足して全てのファイルを列挙します。

               ・検索条件が入力されなかった時
                 該当ディレクトリ内の全てのファイルを列挙します。

  変更履歴:

    2.1.1.0 (2002/11/11) 新規作成
    4.0.0.0 (2005/01/31) 内部ロジックの全面見直し

  機能分類
    その他入力
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドのサマリー

    - ### クラスから継承されたフィールド org.opengion.hayabusa.taglib.CommonTagSupport

      `BR, BUFFER_MIDDLE, CR`

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.BodyTagSupport

      `bodyContent`

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.TagSupport

      `id, pageContext`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.BodyTag

      `EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

  - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `FileWhereTag()` デフォルトコンストラクター

  - ### メソッドのサマリー

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `protected void` | `release2()` タグリブオブジェクトをリリースします。
    `void` | `setEndsWith(String suffix)` 【TAG】指定された接頭辞で終わる場合、スルー(選択)されます(初期値:null)。
    `void` | `setEquals(String str)` 【TAG】ファイル名が一致する場合、スルー(選択)されます(初期値:null)。
    `void` | `setIgnoreCase(String flag)` 【TAG】大文字/小文字を区別しないかどうか[true/false]を指定します(初期値:false(区別する))。
    `void` | `setInstr(String str)` 【TAG】指定された文字列がファイル名に含まれる場合、スルー(選択)されます(初期値:null)。
    `void` | `setIsHidden(String flag)` 【TAG】対象に隠しファイル(hidden)を、スルー(選択)する場合、true を指定します(初期値:null)。
    `void` | `setIsLarger(String len)` 【TAG】指定の大きさより大きいファイルの場合、スルー(選択)されます(初期値:null)。
    `void` | `setIsSmaller(String len)` 【TAG】指定の大きさより小さいファイルの場合、スルー(選択)されます(初期値:null)。
    `void` | `setLastModified(String modify)` 【TAG】指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます(初期値:null)。
    `void` | `setMatches(String str)` 【TAG】ファイル名が、指定された正規表現と一致する場合、スルー(選択)されます(初期値:null)。
    `void` | `setStartsWith(String prefix)` 【TAG】指定された接頭辞で始まる場合、スルー(選択)されます(初期値:null)。
    `void` | `setUnMatches(String str)` 【TAG】ファイル名が、指定された正規表現と一致しない場合、スルー(選択)されます(初期値:null)。
    `void` | `setUseDir(String flag)` 【TAG】フィルタによる対象の絞込みをディレクトリにも適用するかどうか[false:File/true:File+Dir/only:Dir]を指定します(初期値:false:しない)。
    `String` | `toString()` このオブジェクトの文字列表現を返します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport

      `add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, doStartTag, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsg, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getSumRequestValue, getTagName, getTransaction, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, makeUrl, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseIf, setCaseKey, setCaseNN, setCaseNull, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterNames, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheck`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.BodyTagSupport

      `doInitBody, getBodyContent, getPreviousOut, release, setBodyContent`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.TagSupport

      `findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド javax.servlet.jsp.tagext.Tag

      `getParent, setPageContext, setParent`

- - ### コンストラクタの詳細

    - #### 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` インタフェース内 `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]。

    - #### 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]。

    - #### setStartsWith

          public void setStartsWith(String prefix)

      【TAG】指定された接頭辞で始まる場合、スルー(選択)されます(初期値:null)。
      パラメータ:
        `prefix` - 接頭辞
      関連項目:
        `String.startsWith(String)`
      説明:

             引数が null の場合は、追加しません。

    - #### setEndsWith

          public void setEndsWith(String suffix)

      【TAG】指定された接頭辞で終わる場合、スルー(選択)されます(初期値:null)。
      パラメータ:
        `suffix` - 接尾辞
      関連項目:
        `String.endsWith(String)`
      説明:

             引数が null の場合は、追加しません。

    - #### setInstr

          public void setInstr(String str)

      【TAG】指定された文字列がファイル名に含まれる場合、スルー(選択)されます(初期値:null)。
      パラメータ:
        `str` - 指定の部分文字列
      説明:

             引数が null の場合は、追加しません。

    - #### setEquals

          public void setEquals(String str)

      【TAG】ファイル名が一致する場合、スルー(選択)されます(初期値:null)。
      パラメータ:
        `str` - ファイル名文字列
      関連項目:
        `String.equals(Object)`
      説明:

             大文字小文字は区別しません。
             引数が null の場合は、追加しません。

    - #### setMatches

          public void setMatches(String str)

      【TAG】ファイル名が、指定された正規表現と一致する場合、スルー(選択)されます(初期値:null)。
      パラメータ:
        `str` - ファイル名文字列(正規表現)
      関連項目:
        `Pattern.compile(String,int)`, `Matcher.find()`
      説明:

             大文字小文字は区別しません。
             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()`
      説明:

             大文字小文字は区別しません。
             Pattern.compile( str,Pattern.CASE_INSENSITIVE ) ;
             pattern.matcher( pathname.getName() ).find() == false と同じ結果が得られます。
             引数が null の場合は、追加しません。

    - #### setLastModified

          public void setLastModified(String modify)

      【TAG】指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます(初期値:null)。
      パラメータ:
        `modify` - YYYYMMDD形式の指定日
      説明:

             ディレクトリは、ここの判定では無視します。(必ず true を返します)
             日付けの指定に、YYYYMMDD 形式の ８文字数字文字列以外に、
             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 を基準時刻

    - #### 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:しない]
      説明:

             trueを指定すると、隠しファイル(hidden)のみ選択します。
             falseを指定すると、隠しファイル(hidden)以外を選択します。
             隠しファイルかどうかの定義はOSに従います。
             初期値は、両方とも選択する為、null (trueでもfalseでもない)です。

      変更履歴:

        5.7.5.0 (2014/04/04) 新規作成

    - #### setUseDir

          public void setUseDir(String flag)

      【TAG】フィルタによる対象の絞込みをディレクトリにも適用するかどうか[false:File/true:File+Dir/only:Dir]を指定します(初期値:false:しない)。
      パラメータ:
        `flag` - ディレクトリ適用 [true:する/false:しない]
      説明:

             初期値は、false(ディレクトリはフィルタによる絞込みをしない)です。

      変更履歴:

        5.3.9.0 (2011/09/01) 新規作成
        6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。

    - #### setIgnoreCase

          public void setIgnoreCase(String flag)

      【TAG】大文字/小文字を区別しないかどうか[true/false]を指定します(初期値:false(区別する))。
      パラメータ:
        `flag` - 大文字/小文字を区別しないかどうか [true:しない/それ以外:する]
      説明:

             startsWith , contains , endsWith , equalsIgnoreCase での比較時に、比較対象の
             大文字/小文字を区別しないかどうかを指定します。
             区別しない ("true") 場合、aaa と AAA は、一致したとみなされます。
             初期値は、区別する ("false") です。

      変更履歴:

        6.3.1.1 (2015/07/10) 大文字/小文字の区別なし(ignoreCase=true)対応

    - #### toString

          public String toString()

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

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.