org.opengion.hayabusa.taglib

## クラス FileOptionTag

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

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

      public class FileOptionTag
      extends CommonTagSupport

  ファイルのプルダウンリストの作成するタグです。 SelectタグのBODY部に指定します。 並び替えについては、このタグで指定しますが、ファイルの選別は、 BODY 部に記述する fileWhere タグで指定します。
  関連項目:
    直列化された形式
  形式サンプル:

         ●形式：<og:fileOption from="…" value="[…]" ･･･ >･･･</og:fileOption>
         ●body：あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します)

         ●Tag定義：
           <og:fileOption
               from               【TAG】ファイルの検索元となるディレクトリを指定します (初期値:FILE_URL[=filetemp/])
               value              【TAG】Optionの初期値で選ばれる値を指定します
               orderBy            【TAG】検索した結果を表示する表示順をファイル属性名で指定します(初期値:自然順序)
               desc               【TAG】表示順を逆転するかどうか[true/false]を指定します(初期値:false)
               storageType		【TAG】読み取り元ストレージタイプを指定します(初期値:CLOUD_TARGET)
               bucketName			【TAG】読み取り元バケット名を指定します(初期値:CLOUD_BUCKET)
               debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
           >   ... Body ...
           </og:fileOption>

         ●使用例
              ・<og:fileOption val1="ABCD" val2="{@value}" >
                    <og:fileWhere startsWith="ABCD" ･･･ />
                </og:fileOption>

  変更履歴:

    2.1.1.0 (2002/11/11) 新規作成
    4.0.0.0 (2005/01/31) 内部ロジック改定
    5.10.9.0 (2019/03/01) oota クラウドストレージ対応を追加。(Fileクラスを拡張)

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

- - ### ネストされたクラスのサマリー

    ネストされたクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `(package private) static class` | `FileOptionTag.LengthComparator` ファイルサイズ順でのソート順を指定する Comparator の実体内部クラス
    `(package private) static class` | `FileOptionTag.ModifiedComparator` 更新日順でのソート順を指定する Comparator の実体内部クラス
    `(package private) static class` | `FileOptionTag.NameComparator` 名前順でのソート順を指定する Comparator の実体内部クラス

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

    - ### クラスから継承されたフィールド 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`

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

    コンストラクタ
    コンストラクタと説明
    `FileOptionTag()`

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

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doAfterBody()` Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
    `int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `int` | `doStartTag()` Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
    `protected void` | `release2()` タグリブオブジェクトをリリースします。
    `void` | `setBucketName(java.lang.String bucket)` 【TAG】読み取り元バケット名を設定します。
    `void` | `setDesc(java.lang.String flag)` 【TAG】表示順を逆転するかどうか[true/false]を指定します(初期値:false)。
    `protected void` | `setFileFilter(java.io.FileFilter filter)` FileFilterオブジェクトをセットします。
    `void` | `setFrom(java.lang.String url)` 【TAG】ファイルの検索元となるディレクトリを指定します (初期値:FILE_URL[=filetemp/])。
    `void` | `setOrderBy(java.lang.String ordr)` 【TAG】検索した結果を表示する表示順をファイル属性名で指定します(初期値:自然順序)。
    `void` | `setStorageType(java.lang.String storage)` 【TAG】読み取り元ストレージタイプを設定します。
    `void` | `setValue(java.lang.String val)` 【TAG】Optionの初期値で選ばれる値を指定します。
    `java.lang.String` | `toString()` このオブジェクトの文字列表現を返します。

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

      `add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getTagName, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, 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`

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

    - #### FileOptionTag

          public FileOptionTag()

  - ### メソッドの詳細

    - #### doStartTag

          public int doStartTag()

      Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
      定義:
        `doStartTag` インタフェース内 `Tag`
      オーバーライド:
        `doStartTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示( EVAL_BODY_BUFFERED )

    - #### doAfterBody

          public int doAfterBody()

      Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
      定義:
        `doAfterBody` インタフェース内 `IterationTag`
      オーバーライド:
        `doAfterBody` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示(SKIP_BODY)

    - #### doEndTag

          public int doEndTag()

      Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
      定義:
        `doEndTag` インタフェース内 `Tag`
      オーバーライド:
        `doEndTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示
      変更履歴:

        3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。

    - #### release2

          protected void release2()

      タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
      オーバーライド:
        `release2` クラス内 `CommonTagSupport`
      変更履歴:

        3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。
        5.10.9.0 (2019/03/01) storageType,bucketName属性を追加

    - #### setValue

          public void setValue(java.lang.String val)

      【TAG】Optionの初期値で選ばれる値を指定します。
      パラメータ:
        `val` - 初期値で選ばれる値
      説明:

             キーになるのは、ファイル属性の NAME です。(ディレクトリなしのファイル名)
             ここで value属性に指定した場合、このファイル名と(大文字小文字を無視して)
             一致する場合に、プルダウンの初期値に表示されます。(selected 属性が設定される。)

    - #### setFrom

          public void setFrom(java.lang.String url)

      【TAG】ファイルの検索元となるディレクトリを指定します (初期値:FILE_URL[=filetemp/])。
      パラメータ:
        `url` - ファイルの検索元となるディレクトリ
      関連項目:
        `SystemData.FILE_URL`
      説明:

             ファイルの検索元となるディレクトリを指定します。
             (初期値:システム定数のFILE_URL[={@og.value org.opengion.hayabusa.common.SystemData#FILE_URL}])。

      変更履歴:

        4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。

    - #### setOrderBy

          public void setOrderBy(java.lang.String ordr)

      【TAG】検索した結果を表示する表示順をファイル属性名で指定します(初期値:自然順序)。
      パラメータ:
        `ordr` - ソートキー("NAME","LASTMODIFIED","FILE_LENGTH")
      説明:

             ファイルをソートする順(Comparator)を指定します。ソートに指定できる
             ファイル属性名は、"NAME","LASTMODIFIED","FILE_LENGTH" の内のどれかひとつです。
             何も指定しない場合は、Fileオブジェクトの自然順序でのソートになります。
             (※ 下位互換性のため、LENGTH も残しますが、廃止予定です。)

      変更履歴:

        3.5.6.2 (2004/07/05) 文字列の連結にStringBuilderを使用します。
        4.0.0.0 (2005/01/31) 新規ロジックで改定
        5.3.4.0 (2011/04/01) ORDER_BYリストの出力方法 見直し

    - #### setDesc

          public void setDesc(java.lang.String flag)

      【TAG】表示順を逆転するかどうか[true/false]を指定します(初期値:false)。
      パラメータ:
        `flag` - 表示順を逆転するかどうか [true:逆順/false:昇順]
      説明:

             orderBy 属性で指定した表示順を、逆順にするかどうかを指定できます。
             初期値は、false (昇順) です。

    - #### setFileFilter

          protected void setFileFilter(java.io.FileFilter filter)

      FileFilterオブジェクトをセットします。 これは、BODY 部に登録した、FileWhereタグによって設定された ファイルフィルターです。
      パラメータ:
        `filter` - オブジェクト

    - #### setStorageType

          public void setStorageType(java.lang.String storage)

      【TAG】読み取り元ストレージタイプを設定します。
      パラメータ:
        `storage` - ストレージタイプ
      説明:

             ファイルを読み取り元の、ストレージタイプを設定します。
             未設定の場合は、システムリソースの「CLOUD_TARGET」が参照されます。
             自身のサーバを指定する場合は、「default」を設定してください。

      変更履歴:

        5.10.9.0 (2019/03/01) 新規追加

    - #### setBucketName

          public void setBucketName(java.lang.String bucket)

      【TAG】読み取り元バケット名を設定します。
      パラメータ:
        `bucket` - バケット名
      説明:

             ファイルを読み取り元の、バケット名を指定します。
             クラウドストレージ利用時のみ有効です。
             未設定の場合は、システムリソースの「CLOUD_BUKET」が参照されます。

      変更履歴:

        5.10.9.0 (2019/03/01) 新規追加

    - #### toString

          public java.lang.String toString()

      このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
      オーバーライド:
        `toString` クラス内 `CommonTagSupport`
      戻り値:
        このクラスの文字列表現
      変更履歴:

        5.10.9.0 (2019/03/01) storageType,bucketNameを出力対象に追加。

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