openGionopenGion
5.4.3.4

org.opengion.hayabusa.html
クラス TableFormatter

java.lang.Object
  上位を拡張 org.opengion.hayabusa.html.TableFormatter

public class TableFormatter
extends java.lang.Object

[PN],[OYA] などの [] で指定されたカラムで表されたフォーマットデータに対して、 DBTableModel オブジェクトを適用して 各カラムに実データを割り当てるオブジェクトです。 特に、[XXXX]に対して、[#XXXX]、[$XXXX]、[$XXXX]などの特殊記号が使用できます。 特殊記号の解釈は、HTMLFormatTextField系とHTMLFormatTable系で異なりますので ご注意ください。

変更履歴:
3.5.4.0 (2003/11/25) 新規追加
機能階層
画面表示
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
static java.lang.String HYBS_ITD_MARKER
          フォーマットタイプの指定の特殊なマーク "h_itd_marker"
 
コンストラクタの概要
TableFormatter()
           
 
メソッドの概要
 java.lang.String getFormat()
          フォーマットを取得します。
 java.lang.String getFormat(int no)
          フォーマット文字列を返します。
 FormatterType getFormatType()
          このフォーマットのタイプを返します。
 java.lang.String getItdBody()
          itdフォーマット文字列を取得します。
 int getLocation(int no)
          カラムのロケーション番号を返します。
 int getLocationSize()
          ロケーション番号のサイズを返します。
 java.lang.String getRowspan()
          設定された rowspan を返します。
 java.lang.String getSystemFormat(int row, int loc)
          システムフォーマット文字列を返します。
 java.lang.String getTrTag()
          設定された フォーマットの trタグを返します。
 char getType(int no)
          タイプ文字列を返します。
 boolean isNoClass()
          カラムのクラス名(VERCHAR2 , NUMBERX,S9 など)のセットを行うかどうか取得します。
 boolean isUse(int row, DBTableModel table)
          このフォーマットを使用するかどうかの問い合わせを返します。
 void makeFormat(DBTableModel table)
          DBTableModelを利用して、フォーマットデータを初期化します。
 void setFormat(java.lang.String fmt)
          フォーマットをセットします。
 void setFormatType(FormatterType ftype)
          テーブルフォーマットのタイプを指定します。
 void setItdBody(java.lang.String itd)
          itdフォーマット文字列を設定します。
 void setNoClass(java.lang.String flag)
          カラムのクラス名(VERCHAR2 , NUMBERX,S9 など)のセットを行うかどうか指定します。
 void setRowspan(java.lang.String rowspan)
          テーブルの rowspan 属性をセットします。
 void setUsableKey(java.lang.String key)
          フォーマットの使用可否を判断するキーとなるカラム名を指定します。
 void setUsableList(java.lang.String list)
          フォーマットの使用可否を判断する文字列リストを指定します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

HYBS_ITD_MARKER

public static final java.lang.String HYBS_ITD_MARKER
フォーマットタイプの指定の特殊なマーク "h_itd_marker"

関連項目:
定数フィールド値
コンストラクタの詳細

TableFormatter

public TableFormatter()
メソッドの詳細

setFormat

public void setFormat(java.lang.String fmt)
フォーマットをセットします。 フォーマットに、<table>を含む場合、TextField扱いなので、フォーマット分割 しません。table を含まず、tr を含む場合は、1行分のデータとして扱う為、 trTag を求めます。 trTag と format との間に、行ヘッダーが入ります。 Tomcat6では、JSPのパース時に、tabやspaceはそのままパースされるため、前 のスペース削除処理も行います。

パラメータ:
fmt - [カラム名] 形式のフォーマットデータ
変更履歴:
前のスペースを取り消します。
4.3.2.0 (2008/09/10)

getFormat

public java.lang.String getFormat()
フォーマットを取得します。

戻り値:
フォーマットデータ
変更履歴:
3.5.5.8 (2004/05/20) 新規追加
5.1.7.0 (2010/06/01) サニタイズ戻し処理("\\]\\"から"["に戻し)を追加

makeFormat

public void makeFormat(DBTableModel table)
DBTableModelを利用して、フォーマットデータを初期化します。

パラメータ:
table - DBTableModel
変更履歴:
3.5.5.0 (2004/03/12) [KEY.カラム名] 機能追加
3.5.5.2 (2004/04/02) [I] で、行番号を作成します。
3.5.6.0 (2004/06/18) '!' 値のみ 追加 既存の '$' は、レンデラー
3.6.0.0 (2004/09/17) [ROW.ID] で、行毎のチェックボックスのIDを返します。
5.1.7.0 (2010/06/01) サニタイズ戻し処理("\\]\\"から"["に戻し)を追加

setFormatType

public void setFormatType(FormatterType ftype)
テーブルフォーマットのタイプを指定します。 enum FormatterType で、指定します。

パラメータ:
ftype - フォーマットのタイプ
変更履歴:
4.0.0 (2007/05/02) enum 定義に変更

getFormatType

public FormatterType getFormatType()
このフォーマットのタイプを返します。 このフォーマットのタイプを返します。

戻り値:
FormatterType このフォーマットのタイプを返します。
変更履歴:
4.0.0 (2007/05/02) enum 定義に変更

setRowspan

public void setRowspan(java.lang.String rowspan)
テーブルの rowspan 属性をセットします。 rowspan は、ヘッダー部のフォーマットの行数です。デフォルトは 2行 です。 設定は、"2" などの、数字部のみをセットします。

パラメータ:
rowspan - 属性

getRowspan

public java.lang.String getRowspan()
設定された rowspan を返します。 これは、フォーマットの段組の数を取り出します。 文字列としては、rowspan="2" という形で取り出します。

戻り値:
フォーマット文字列

getLocationSize

public int getLocationSize()
ロケーション番号のサイズを返します。 フォーム位置番号は、0 から getLocationSize()-1 までの数字を指定します。 ロケーションサイズは、aaa[ABC]bbb[DEF]ccc[GHI]ddd となっている場合、 aaa , bbb , ccc , ddd は、フォーマットで、サイズは4。 ABC , DEF , GHI に対応するカラム番号がロケーションで、サイズは3。 このメソッドで返すのは、ロケーション番号(3)の方です。

戻り値:
ロケーション番号のサイズ

getLocation

public int getLocation(int no)
カラムのロケーション番号を返します。 引数は、0 から、getLocationSize()-1 までの数で指定します。 指定の位置の、フォーマットのカラム名に対応するロケーション番号 を返します。

パラメータ:
no - フォーム位置番号
戻り値:
ロケーション番号

getFormat

public java.lang.String getFormat(int no)
フォーマット文字列を返します。 引数は、0 から、getLocationSize() までの数で指定します。 指定のフォーマットが、aaa[ABC]bbb[DEF]ccc[GHI]ddd となっている場合、 aaa , bbb , ccc , ddd を引数 0 , 1 , 2 , 3 で返します。

パラメータ:
no - フォーム位置番号
戻り値:
フォーマット文字列

getSystemFormat

public java.lang.String getSystemFormat(int row,
                                        int loc)
システムフォーマット文字列を返します。 システムフォーマット文字列は、[KEY.カラム名] などの特殊記号で指定された カラム名の事で、location には、マイナスの値が設定されます。 マイナスの値に応じて、処理を変えることが出来ます。 [KEY.カラム名] : 行番号付きカラム名 [I] : 行番号 [ROW.ID] : 行毎のチェックボックスのID [ROW.JSON] : 行毎の全データのJavaScriptオブジェクト形式

パラメータ:
row - int 行番号
loc - int 位置番号
戻り値:
フォーマット文字列
変更履歴:
3.5.5.0 (2004/03/12) [KEY.カラム名] 機能追加
3.5.5.2 (2004/04/02) [I] で、行番号を作成します。
3.6.0.0 (2004/09/17) [ROW.ID] で、行毎のチェックボックスのIDを返します。
4.0.0 (2007/05/02) Formatter を使用するように変更

getType

public char getType(int no)
タイプ文字列を返します。 タイプとは、[XXX] の記述で、[#XXX] は、XXXカラムのラベルを、[$XXX]は、XXXカラムの レンデラーを、[!XXX} は、値のみ取り出す指定を行います。 主に、TextField系のフォーマットとTable系では、意味合いが異なりますので、 ご注意ください。

パラメータ:
no - フォーム位置番号
戻り値:
タイプ文字列 '#':ラベルのみ '$':レンデラー '!':値のみ その他:通常

getTrTag

public java.lang.String getTrTag()
設定された フォーマットの trタグを返します。 これは、trタグにclass属性他の設定がされていた場合に、変換後の 文字列にも反映させる為に必要です。

戻り値:
フォーマットの trタグ
変更履歴:
5.1.7.0 (2010/06/01) サニタイズ戻し処理("\\]\\"から"["に戻し)を追加

setNoClass

public void setNoClass(java.lang.String flag)
カラムのクラス名(VERCHAR2 , NUMBERX,S9 など)のセットを行うかどうか指定します。 "true" で、クラス属性を設定しません。これは、CSSファイルに書かれている属性を 使用しないことを意味します。 デフォルトは、"false" です。

パラメータ:
flag - クラス名使用の有無(true:使用しない/false:使用する。)

isNoClass

public boolean isNoClass()
カラムのクラス名(VERCHAR2 , NUMBERX,S9 など)のセットを行うかどうか取得します。 "true" で、クラス属性を設定しません。これは、CSSファイルに書かれている属性を 使用しないことを意味します。 デフォルトは、"false" です。

戻り値:
クラス名使用の有無(true:使用しない/false:使用する。)

setUsableKey

public void setUsableKey(java.lang.String key)
フォーマットの使用可否を判断するキーとなるカラム名を指定します。 キーが、usableList に含まれる場合は、このフォームを使用できます。 キー(カラム名)が指定されない場合は、常に使用されます。 ※ 現時点では、BODYタイプのみ使用しています。

パラメータ:
key - フォーマットの使用可否を判断するカラム名

setUsableList

public void setUsableList(java.lang.String list)
フォーマットの使用可否を判断する文字列リストを指定します。 キーが、この文字列リスト中に存在する場合は、このフォームを使用できます。 この文字列リストは、固定な文字列です。{&64;XXXX}は使用できますが、[XXXX]は 使用できません。 初期値は、"1" です。 ※ 現時点では、BODYタイプのみ使用しています。

パラメータ:
list - フォーマットの使用可否を判断する文字列リスト
関連項目:
isUse( int,DBTableModel )

isUse

public boolean isUse(int row,
                     DBTableModel table)
このフォーマットを使用するかどうかの問い合わせを返します。 "true" で、使用します。setUsableKey( String ) で、指定された カラム名の値が、setUsableList( String ) で指定された文字列に含まれていれば、 使用します。カラム名がセットされない場合は、デフォルト値("true")が使用されます。 ※ 現時点では、BODYタイプのみ使用しています。 カラムのデータに、不正なスペースが入る場合を想定して、trim() しています。 よって、usableList の値にスペースは使用できません。

パラメータ:
row - 行番号
table - DBTableModel
戻り値:
このフォームを使用するかどうか(true:使用する/false:使用しない)
関連項目:
setUsableKey( String ), setUsableList( String )
変更履歴:
3.5.6.2 (2004/07/05) 判定評価用カラムの値を trim() します。

setItdBody

public void setItdBody(java.lang.String itd)
itdフォーマット文字列を設定します。 itd ボディ部の文字列を指定します。 itd ボディは、繰り返し処理を行います。これを、上位のボディ文字列の中の HYBS_ITD_MARKER 文字列 と置き換えます。

パラメータ:
itd - itdフォーマットの文字列
変更履歴:
3.5.6.0 (2004/06/18) itdフォーマット文字列の取り込み

getItdBody

public java.lang.String getItdBody()
itdフォーマット文字列を取得します。 itd ボディ部の文字列を取得します。 itd ボディは、繰り返し処理を行います。これを、上位のボディ文字列の中の HYBS_ITD_MARKER 文字列 と置き換えます。

戻り値:
itd itdフォーマットの文字列
変更履歴:
3.5.6.0 (2004/06/18) itdフォーマット文字列の取り込み

openGion 5.4.3.4

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