public class FileQueryTag extends QueryTag
ファイルを検索し、DBTableModel にセットするタグです。
ファイルの検索結果は、[WRITABLE],LEVEL,FILE_TYPE,PARENT,NAME,LASTMODIFIED,FILE_LENGTH,RWH,[MD5],[TO_PARENT,TO_NAME],[・・・・]
のカラムを持つ DBTableModel にセット されます。このカラムは、固定です。
並び替えについては、このタグで指定しますが、ファイルの選別(where 条件)は、
BODY 部に記述する fileWhere タグで指定します。(複数指定可能))
[カラム名] 検索するファイルの属性は、以下のカラム名で作成されます。
[WRITABLE] useWritable=trueで、先頭カラムに、WRITABLE カラムが挿入されます。
LEVEL ディレクトリを展開する場合のレベル。
FILE_TYPE ファイル(F)かディレクトリ(D)であるか判定。
PARENT この抽象パス名の親のパス名文字列を返します。
NAME この抽象パス名が示すファイルまたはディレクトリの名前を返します。
LASTMODIFIED 最後に変更された時刻を返します。
FILE_LENGTH ファイルの長さを返します。
RWH 読み込み、書き込み、隠し属性をそれぞれ、r,w,h で表します。
[MD5] useMD5=trueで、MD5 というカラムを追加したうえで、ファイルのMD5計算を行います。
[TEXT] useText=trueで、ファイルの内容を文字列にして、TEXTというカラムに設定します。
[TO_PARENT] useUpdateClms=trueで、fileUpdateタグでCOPYやMOVEを行う時に使用する必須となるカラム(TO_PARENT,TO_NAME)を追加します。
[TO_NAME] 同上
[・・・・] addClms属性で指定されたカラムを追加します。 ●形式:<og:fileQuery from="…" multi="true/false" >
<og:fileWhere … />
…
</og:fileQuery>
●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します)
●Tag定義:
<og:fileQuery
from ○【TAG】検索を開始するファイルまたはディレクトリを指定します(必須)。
multi 【TAG】多段階展開するか、1レベル展開するかどうか[true:多段階/false:1レベル]を指定します(初期値:false:1レベル)。
level 【TAG】多段階展開するレベルを指定します(初期値:100)。
orderBy 【TAG】ソートするカラム名を指定します(一つのみ)。
desc 【TAG】表示順を逆転するかどうか[true/false]を指定します(初期値:false)。
useWritable 【TAG】先頭カラムに、WRITABLE カラムを追加するかどうか[true/false]を指定します(初期値:false)。
useMD5 【TAG】MD5カラムを追加したうえで、MD5計算を行うかどうか[true/false]を指定します(初期値:false)。
useText 【TAG】TEXTカラムを追加したうえで、ファイルの内容を読み込むかどうか[true/false]を指定します(初期値:false)。
useUpdateClms 【TAG】TO_PARENT、TO_NAMEカラムを追加するかどうか[true/false]を指定します(初期値:false)。
addClms 【TAG】検索結果のカラム列に追加するカラム名を、CSV形式で指定します。
fileType 【TAG】選択対象[FILE/DIR]を指定します。下位展開は考慮(multi 属性準拠)されます。
addFrom 【TAG】from属性で指定された基準ファイル/フォルダ自体をリストに追加するかどうか[true/false]を指定します(初期値:true)。
command 【TAG】コマンド (NEW,RENEW)をセットします("NEW" と "RENEW" 時のみ実行する(初期値:NEW))。
maxRowCount 【TAG】(通常は使いません)データの最大読み込み件数を指定します (初期値:DB_MAX_ROW_COUNT[=1000])(0:[無制限])。
displayMsg 【TAG】検索結果を画面上に表示するメッセージリソースIDを指定します (初期値:VIEW_DISPLAY_MSG[=])
overflowMsg 【TAG】検索データが最大検索数をオーバーした場合に表示するメッセージリソースIDを指定します (初期値:MSG0007[検索結果が、制限行数を超えましたので、残りはカットされました])。
notfoundMsg 【TAG】検索結果がゼロ件の場合に表示するメッセージリソースIDを指定します(初期値:MSG0077[対象データはありませんでした])。
stopZero 【TAG】検索結果が0件のとき処理を続行するかどうか[true/false]を指定します(初期値:false[続行する])
tableId 【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します
scope 【TAG】キャッシュする場合のスコープ[request/page/session/application]を指定します(初期値:session)。
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)。
> ... Body ...
</og:fileQuery>
●使用例
・一般的な属性でファイルの検索を行います。
<og:fileQuery
from = "d:/webapps/dbdef/jsp/"
multi = "true"
command = "{@command}" >
<og:fileWhere endWith=".jsp" />
</og:fileQuery>
・最終変更日で逆順ソートする。対象は、2002/10/01 以降に変更されたファイル。
<og:fileQuery
from = "d:/webapps/dbdef/jsp/"
multi = "true"
orderBy = "LASTMODIFIED"
desc = "true"
command = "{@command}" >
<og:fileWhere lastModified="20021001000000" />
</og:fileQuery>CMD_NEW, CMD_RENEW, command, dispError, displayMsg, dyStart, ERR_MSG_ID, errCode, errMessage, executeCount, maxRowCount, names, outMessage, quotCheck, skipRowCount, sql, stopError, table, tableId, useTimeView, xssCheckBR, BUFFER_MIDDLE, CRbodyContentid, pageContextEVAL_BODY_BUFFERED, EVAL_BODY_TAGEVAL_BODY_AGAINEVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE| コンストラクタと説明 |
|---|
FileQueryTag()
デフォルトコンストラクター
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
int |
doAfterBody()
Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
|
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
|
protected void |
execute(java.io.File fin,
int lvl)
FileQuery を実行します。
|
protected void |
release2()
タグリブオブジェクトをリリースします。
|
void |
setAddClms(java.lang.String clms)
【TAG】検索結果のカラム列に追加するカラム名を、CSV形式で指定します。
|
void |
setAddFrom(java.lang.String flag)
【TAG】from属性で指定された基準ファイル/フォルダ自体をリストに追加するかどうか[true/false]を指定します(初期値:true)。
|
void |
setDesc(java.lang.String flag)
【TAG】表示順を逆転するかどうか[true/false]を指定します(初期値:false)。
|
protected void |
setFileFilter(java.io.FileFilter filter)
FileFilterオブジェクトをセットします。
|
void |
setFileType(java.lang.String str)
【TAG】ファイル名が、指定されたファイルタイプ[DIR/FILE]と一致した場合、スルー(選択)されます(初期値:null)。
|
void |
setFrom(java.lang.String url)
【TAG】ファイルの検索元となるディレクトリを指定します
(初期値:FILE_URL[=filetemp/])。
|
void |
setLevel(java.lang.String lvl)
【TAG】多段階展開するレベルを指定します(初期値:100)。
|
void |
setMulti(java.lang.String mlti)
【TAG】多段階展開するか、1レベル展開するかどうか[true/false]を指定します(初期値:false)。
|
void |
setOrderBy(java.lang.String clm)
【TAG】ソートするカラム名を指定します(一つのみ)。
|
void |
setUseMD5(java.lang.String flag)
【TAG】MD5カラムを追加したうえで、MD5計算を行うかどうか[true/false]を指定します(初期値:false)。
|
void |
setUseText(java.lang.String flag)
【TAG】TEXTカラムを追加したうえで、ファイルの内容を読み込むかどうか[true/false]を指定します(初期値:false)。
|
void |
setUseUpdateClms(java.lang.String flag)
【TAG】TO_PARENT、TO_NAMEカラムを追加するかどうか[true/false]を指定します(初期値:false)。
|
void |
setUseWritable(java.lang.String flag)
【TAG】先頭カラムに、WRITABLE カラムを追加するかどうか[true/false]を指定します(初期値:false)。
|
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。
|
addPlaceValue, doStartTag, execute, getRequest, setCheckNames, setCommand, setDbid, setDispError, setDisplayMsg, setMainTrans, setMaxRowCount, setModifyType, setNames, setNotfoundMsg, setOutMessage, setOverflowMsg, setQueryType, setQuotCheck, setSkipRowCount, setStopError, setStopZero, setTableId, setTrace, setUseBeforeHtmlTag, setUseTimeView, setXssCheckadd, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doCatch, doFinally, 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, useXssCheckdoInitBody, getBodyContent, getPreviousOut, release, setBodyContentfindAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValueclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetParent, setPageContext, setParentpublic FileQueryTag()
public int doAfterBody()
doAfterBody インタフェース内 IterationTagdoAfterBody クラス内 QueryTagpublic int doEndTag()
protected void release2()
protected void execute(java.io.File fin,
int lvl)
fin - 検索を開始するファイル/ディレクトリlvl - 階層展開レベルpublic void setFrom(java.lang.String url)
url - ファイルの検索元となるディレクトリpublic void setMulti(java.lang.String mlti)
mlti - 多段階展開するか [true:する/false:1レベル]public void setLevel(java.lang.String lvl)
lvl - 多段階展開するレベルpublic void setOrderBy(java.lang.String clm)
clm - ソートするカラム名 (一つのみ、逆順はマイナスを付ける)setDesc( String )public void setDesc(java.lang.String flag)
flag - 表示順逆順 [逆順:true/正順:false]setOrderBy( String )public void setUseWritable(java.lang.String flag)
flag - WRITABLEカラム追加 [true:する/false:しない]public void setUseMD5(java.lang.String flag)
flag - MD5カラム追加 [true:する/false:しない]public void setUseText(java.lang.String flag)
flag - TEXTカラム追加 [true:する/false:しない]public void setUseUpdateClms(java.lang.String flag)
flag - TO_PARENT、TO_NAMEカラム追加 [true:追加する/false:追加しない]setAddClms( String ),
FileUpdateTagpublic void setAddClms(java.lang.String clms)
clms - 追加するカラム名(CSV形式)setUseUpdateClms( String )public void setFileType(java.lang.String str)
str - ファイルタイプ [null:スルー/DIR:ディレクトリのみ検索/FILE:ファイルのみ検索]public void setAddFrom(java.lang.String flag)
flag - 基準をリストに追加するかどうか [true:追加する/false:追加しない]protected void setFileFilter(java.io.FileFilter filter)
filter - オブジェクトWebアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.