openGionopenGion
5.8.3.0

org.opengion.hayabusa.taglib
クラス ViewTimeBarParamTag

java.lang.Object
  上位を拡張 javax.servlet.jsp.tagext.TagSupport
      上位を拡張 javax.servlet.jsp.tagext.BodyTagSupport
          上位を拡張 org.opengion.hayabusa.taglib.CommonTagSupport
              上位を拡張 org.opengion.hayabusa.taglib.ViewParamTag
                  上位を拡張 org.opengion.hayabusa.taglib.ViewTimeBarParamTag
すべての実装されたインタフェース:
Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally

public class ViewTimeBarParamTag
extends ViewParamTag

viewタグの viewFormType が ImageTimeBar の場合にパラメータを設定します。 キー、日時、状況コードを持つ稼働状況の表示を行う、ViewForm_ImageTimeBar クラスに対して、 各種パラメータを設定します。 (パラメータを使用するには、viewタグのuseParam 属性をtrueに設定する必要があります。) SELECT文は、キー、日時、状況コードが、必須項目で、カラムの並び順は、完全に固定です。 よって、カラム位置を指定する必要はありませんが、SELECT文を自由に設定することも 出来ませんので、ご注意ください。 この固定化に伴い、WRITABLE 指定も使用できません。(そもそも書き込み不可です) それ以降のカラムについては、内部処理としては、使用していません。 ただし、パラメータで、カラー色指定、ラベル表記部、イメージ重ね合わせ、 ポップアップ表記、リンク表記に使えます。 データの並び順(ORDER BY)も、キー、日時順にしてください。 データは、キー単位に1レコード作成されます。(キーブレイク)その間、日時順に データを処理します。 データの表示は、今のレコードの日時から、次のレコードの日時までを一つの状態と して表します。今のレコードを表示するには、次のレコードが必要になります。 画面表示は、表示開始日時(minStartTime) から 表示期間(timeSpan)分を表示します。 通常、開始時刻は、表示開始時刻より前より始まり、次のレコードで、終了時刻が決定 されます。最後のデータは、期間満了まで続いていると仮定されます。 データが存在しないのであれば、「存在しないデータ」を作成してください。 ImageTimeBar では、キーでまとめた値について、各状況コードをカラー化し、積み上げ 帯グラフ形式でPNG画像化します。 この画像を、読み込む HTML を出力することで、画面上に、積み上げ帯グラフを表示します。 状況コードに対応する色は、標準では自動作成ですが、外部から色文字列を与えることで 自由に指定する事も可能です。 ポップアップ表記(tipsClm)、リンク表記(linkClm)は、この画像に対するエリア指定タグを出力する事で実現します。 画像ファイルは、全データに対して、1画像だけなので、サイズは大きくなりますが、1レコード 単位に画像を作成しないため、レスポンスは向上します。 それぞれ、viewMarker , viewLink を利用することが可能です。特に、リンク表記(linkClm) については、 linkタグの hrefTarget 属性を true に設定することで適用できます。 画像ファイルは、java.io.File.createTempFile( File ) で作成するため、JavaVM(=Tomcat)が 正常終了するときに、削除されます。異常終了時には残りますが、temp フォルダを定期的に 整理すれば、それほど大量のファイルが残ることはないと思われます。 データは、イベント発生時に作成されると仮定しています。つまり、書き込まれた日時から、 状況コードに対応する状況が発生し、次の状況違いのレコードまで継続していると考えます。 よって、データを途中で切り出す場合、切り出す範囲の前の状態が必要になります。 一番最初の状態は、"不明" として扱います。(空欄=白色) ViewTimeBarParamTag

関連項目:
直列化された形式
形式サンプル:
 ●形式:<og:timeBarParam startDate="・・・" timeSpan="・・・" ・・・ />
 ●body:なし

 ●Tag定義:
   <og:timeBarParam
       startDate       【TAG】タイムテーブルの表示開始日時をセットします(必須)。
       timeSpan        【TAG】タイムテーブルの表示期間を時間で指定します(必須)。
       labelClms       【TAG】一覧表のラベル表示部に表示するカラムをCSV形式で指定します(初期値:キーのRenderer値)。
       colorClm        【TAG】レコードに付ける色を色文字列で指定する場合のカラム名を指定します(初期値:指定しない)。
       tipsClm         【TAG】レコード単位に、マウスオーバー時のTips表示を行うカラムを指定します(初期値:指定しない)。
       linkClm         【TAG】レコード単位に、クリッカブルリンクを設定するカラムを指定します(初期値:指定しない)。
       useLegend       【TAG】カラーの凡例を使用するかどうか[true/false]を指定します(初期値:{@og.value #USE_LEGEND})。
       maxLabelWidth   【TAG】ラベル表記部の最大サイズをpxで指定します(初期値:{@og.value #MAX_LABEL_WIDTH})。
       maxTimeWidth    【TAG】タイム表記部の最大サイズをpxで指定をpxで指定します(初期値:{@og.value #MAX_TIME_WIDTH})。
       chartHeight     【TAG】1行のタイムチャートの幅をpxで指定します(初期値:{@og.value #CHART_HEIGHT})。
       padding         【TAG】イメージ作成の 全体テーブルの隙間(パディング)をpxで指定します(初期値:{@og.value #CHART_PADDING})。
       margin          【TAG】1レコードの文字やタイムチャートのマージンをpxで指定します(初期値:{@og.value #RECODE_MARGIN})。
       useLastData     【TAG】行の最後の情報が、継続しているとして使うかどうか[true/false]を指定(初期値:{@og.value #USE_LAST_DATA})。
       debug           【TAG】内部情報を出力します(初期値:false)。
   />

 ●使用例
     ViewFormTag の viewFormType が、ImageTimeBar の場合に使用します。
     useParam 属性を設定しておかないと、使用されません。
     <og:view
         viewFormType = "ImageTimeBar"
         command      = "{@command}"
         useParam     = "true"
     >
         <og:timeBarParam
             startDate   = "{@DYFROM}"
             timeSpan    = "24"
         />
     </og:view >
変更履歴:
5.5.5.6 (2012/08/31) 新規追加
機能分類
画面表示
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
 
クラス 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
 
コンストラクタの概要
ViewTimeBarParamTag()
           
 
メソッドの概要
 int doStartTag()
          Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
protected  String getTagName()
          タグの名称を、返します。
 void setChartHeight(String chartHeight)
          【TAG】1行のタイムチャートの幅をpxで指定します(初期値:20)。
 void setColorClm(String colorClm)
          【TAG】レコードに付ける色を色文字列で指定する場合のカラム名を指定します(初期値:指定しない)。
 void setLabelClms(String labelClms)
          【TAG】一覧表のラベル表示部に表示するカラムをCSV形式で指定します(初期値:キーのRenderer値)。
 void setLinkClm(String linkClm)
          【TAG】レコード単位に、クリッカブルリンクを設定するカラムを指定します(初期値:指定しない)。
 void setMargin(String margin)
          【TAG】1レコードの文字やタイムチャートのマージンをpxで指定します(初期値:3)。
 void setMaxLabelWidth(String maxLblWidth)
          【TAG】ラベル表記部の最大サイズをpxで指定します(初期値:null)。
 void setMaxTimeWidth(String maxTmWidth)
          【TAG】タイム表記部の最大サイズをpxで指定をpxで指定します(初期値:600)。
 void setPadding(String padding)
          【TAG】イメージ作成の 全体テーブルの隙間(パディング)をpxで指定します(初期値:5)。
 void setStartDate(String startDate)
          【TAG】タイムテーブルの表示開始日時をセットします(初期値:データの最小日時)。
 void setTimeSpan(String timeSpan)
          【TAG】タイムテーブルの表示期間を時間で指定します(初期値:24)。
 void setTipsClm(String tipsClm)
          【TAG】レコード単位に、マウスオーバー時のTips表示を行うカラムを指定します(初期値:指定しない)。
 void setUseLastData(String useLastData)
          【TAG】行の最後の情報が、継続しているとして使うかどうか[true/false]を指定します(初期値:true)。
 void setUseLegend(String useLegend)
          【TAG】カラーの凡例を使用するかどうか[true/false]を指定します(初期値:true)。
 
クラス org.opengion.hayabusa.taglib.ViewParamTag から継承されたメソッド
doEndTag, initParam, putParam, release2, toString
 
クラス org.opengion.hayabusa.taglib.CommonTagSupport から継承されたメソッド
add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doAfterBody, 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, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, 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
 

コンストラクタの詳細

ViewTimeBarParamTag

public ViewTimeBarParamTag()
メソッドの詳細

doStartTag

public int doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。

定義:
インタフェース Tag 内の doStartTag
オーバーライド:
クラス CommonTagSupport 内の doStartTag
戻り値:
後続処理の指示

setStartDate

public void setStartDate(String startDate)
【TAG】タイムテーブルの表示開始日時をセットします(初期値:データの最小日時)。

パラメータ:
startDate - タイムテーブルの表示開始日時
説明:
 表示開始日時を起点として、タイムテーブルを表示します。
 実際に画面に表示されるのは、開始時刻から終了時刻の範囲内だけですが、
 起点は、この日時になります。
 
 指定方法として、フォーマットされた日付、時刻情報も設定可能です。(内部的に処理します)
 また、処理後(例:20120824102823)14ケタ以上の場合は、14ケタにカットします。
 8ケタ以上の場合は、時刻 000000 を追加します。
 それ以下の場合は、設定エラーとして、HybsSystemException を throw します。
 
 表示開始日時が指定されない場合は、データの最小時刻を利用して表示します。
 初期値は、データの最小日時 です。

setTimeSpan

public void setTimeSpan(String timeSpan)
【TAG】タイムテーブルの表示期間を時間で指定します(初期値:24)。

パラメータ:
timeSpan - タイムテーブルの表示期間(時)
説明:
 表示開始日時から、どれだけの時間範囲を表示対象とするかを指定します。
 指定する単位は、時間です。
 小数点は指定できません。また、10日なら、"240" 、1か月(30日)なら、"720"
 1年(365日)なら、"8760" を指定します。
 実際に画面に表示されるのは、開始時刻から終了時刻の範囲内だけです。
 初期値は、"{@og.value #TIME_SPAN}" です。

setLabelClms

public void setLabelClms(String labelClms)
【TAG】一覧表のラベル表示部に表示するカラムをCSV形式で指定します(初期値:キーのRenderer値)。

パラメータ:
labelClms - ラベル表示部に表示するカラム(CSV形式)
説明:
 ラベル表示部に表示するカラムをカンマ区切り文字列で指定します。
 指定されたカラムの値の、Renderer値を画面上に表示します。
 ラベル表記部の最大サイズ(maxLblWidth)を指定しない場合は、ここで指定されたカラムの
 値のそれぞれの最大長を加算した値が、ラベル表記部の最大サイズ(maxLblWidth)になります。
 初期値は、キーのRenderer値 です。

setColorClm

public void setColorClm(String colorClm)
【TAG】レコードに付ける色を色文字列で指定する場合のカラム名を指定します(初期値:指定しない)。

パラメータ:
colorClm - 色文字列で指定する場合のカラム名
説明:
 レコード単位に、色を付ける場合、指定の色を付けたい場合に、外部から色文字列を与えることが可能です。
 色文字列は、java.awt.Color の フィールド定義されているコードと同じ文字列です。
 また、#XXXXXX 形式の 16進文字列を与えることで、任意の色を指定可能です。

 初期値は、"指定しない" です。

setTipsClm

public void setTipsClm(String tipsClm)
【TAG】レコード単位に、マウスオーバー時のTips表示を行うカラムを指定します(初期値:指定しない)。

パラメータ:
tipsClm - マウスオーバー時のTips表示を行うカラム名
説明:
 レコード単位に、画像にマウスオーバー時のツールチップ表示のためのデータを作成します。
 HTMLのareaタグの alt 属性を出力します。

 通常は、複数の文字列を使用しますので、viewMarker タグ等で整形してください。
 何も指定しない場合は、リンクがなければ、なにも出力しません。
 初期値は、"指定しない" です。

setLinkClm

public void setLinkClm(String linkClm)
【TAG】レコード単位に、クリッカブルリンクを設定するカラムを指定します(初期値:指定しない)。

パラメータ:
linkClm - クリッカブルリンクを設定するカラム名
説明:
 レコード単位に、画像にクリッカブルリンクを設定するためのデータを作成します。
 HTMLのareaタグ の href 属性を出力します。

 通常は、viewLink タグ等でリンクを作成してください。
 何も指定しない場合は、Tipsがなければ、なにも出力しません。
 初期値は、"指定しない" です。

setUseLegend

public void setUseLegend(String useLegend)
【TAG】カラーの凡例を使用するかどうか[true/false]を指定します(初期値:true)。

パラメータ:
useLegend - カラーの凡例を使用するかどうか[true/false]
説明:
 状況コード、または、色文字列等でグラフ作成した場合の色に対する凡例を使用するかどうかを指定します。
 凡例の表示位置は、グラフの上側で、1レコード分出力します。

 初期値は、"{@og.value #USE_LEGEND}" です。

setMaxLabelWidth

public void setMaxLabelWidth(String maxLblWidth)
【TAG】ラベル表記部の最大サイズをpxで指定します(初期値:null)。

パラメータ:
maxLblWidth - ラベル表記部の最大サイズ(px)
説明:
 画像の1行は、ラベル表記部と、タイムチャート部に分かれます。
 その、ラベル表記部の最大サイズを指定します。
 何も指定しなければ、可変長サイズ(ラベルの大きさに合わせた値)になります。
 単位は px です。(pxは記述不要です)
 初期値は、"{@og.value #MAX_LABEL_WIDTH}" です。

setMaxTimeWidth

public void setMaxTimeWidth(String maxTmWidth)
【TAG】タイム表記部の最大サイズをpxで指定をpxで指定します(初期値:600)。

パラメータ:
maxTmWidth - タイム表記部の最大サイズ(px)
説明:
 画像の1行は、ラベル表記部と、タイムチャート部に分かれます。
 そのタイムチャート部の最大サイズを指定します。
 この幅は、ここで指定した幅に固定されるため、時間範囲が多ければ、1時間当たりの表示幅が
 小さくなります。
 たとえば、8H~20H=12H を 600px で表示すれば、1時間=50px になりますし、24H 表示ならば、
 半分の 25px 、6H ならば、倍の 100px が、1時間の表示幅になります。

 単位は px です。(pxは記述不要です)
 初期値は、"{@og.value #MAX_TIME_WIDTH}" です。

setChartHeight

public void setChartHeight(String chartHeight)
【TAG】1行のタイムチャートの幅をpxで指定します(初期値:20)。

パラメータ:
chartHeight - タイムチャートの幅
説明:
 画像の1行の間隔は、上下のRECODE_MARGIN と、このチャート本体の幅になります(CHART_HEIGHT+RECODE_MARGIN*2)。
 ここでは、チャート本体の幅を指定します。

 単位は px です。(pxは記述不要です)
 初期値は、"{@og.value #CHART_HEIGHT}" です。

setPadding

public void setPadding(String padding)
【TAG】イメージ作成の 全体テーブルの隙間(パディング)をpxで指定します(初期値:5)。

パラメータ:
padding - 全体テーブルの隙間(パディング)
説明:
 イメージは、データの全行を含んだ1枚の画像ファイルになります。
 画像ファイル自体の大きさと、書き込まれた画像の大きさは異なります。
 この、padding は、画像の周りに、余白として指定するサイズをpx単位で指定します。
 ここでは、上下左右に、均等にとります。

 単位は px です。(pxは記述不要です)
 初期値は、"{@og.value #CHART_PADDING}" です。

setMargin

public void setMargin(String margin)
【TAG】1レコードの文字やタイムチャートのマージンをpxで指定します(初期値:3)。

パラメータ:
margin - タイムチャートのマージン
説明:
 イメージは、1レコードづつ書き込まれますが、そのレコードの幅は、chartHeight で指定された
 タイムチャートの幅+マージン*2 になります。
 同様に、ラベル表記部の文字の書き出し位置も、この、マージンが適用されます。
 (文字の場合は、上下左右に適用され、チャート部は、上下のみ適用されます。)

 単位は px です。(pxは記述不要です)
 初期値は、"{@og.value #RECODE_MARGIN}" です。

setUseLastData

public void setUseLastData(String useLastData)
【TAG】行の最後の情報が、継続しているとして使うかどうか[true/false]を指定します(初期値:true)。

パラメータ:
useLastData - タイムチャートのマージン
説明:
 データは、開始時刻を与えられ、次のデータの開始時刻が前のデータの終了時刻として
 処理しています。行の最後のデータは、表示範囲いっぱいまで、続いていると認識する場合は、
 この値を true とします。つまり、最後のデータは利用されます。
 最後のデータがそこで処理を停止したイベントの場合、そのデータは使われません。
 その場合は、false に設定します。イベント色としては、"不明"(空欄=白色) として扱います。

 初期値は、"{@og.value #USE_LAST_DATA}" です。
変更履歴:
5.6.1.1 (2013/02/08) 新規追加

getTagName

protected String getTagName()
タグの名称を、返します。 自分自身のクラス名より、自動的に取り出せないため、このメソッドをオーバーライドします。

オーバーライド:
クラス CommonTagSupport 内の getTagName
戻り値:
タグの名称
関連項目:
CommonTagSupport.getDocumentLink()

openGion 5.8.3.0

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