org.opengion.fukurou.model

## クラス Formatter

- java.lang.Object
- - org.opengion.fukurou.model.Formatter

-     public class Formatter
      extends Object

       [PN],[OYA] などの [] で指定されたカラムで表されたフォーマットデータに対して、
       DataModel オブジェクトを適用して 各カラムに実データを割り当てるオブジェクトです。

       カラム名には、特殊カラム名が使用できます。これは、DataModel に存在しないカラム名
       ですが、値を返すことが出来ます。

       [KEY.カラム名] : 行番号付きカラム名
       [I]            : 行番号
       [ROW.ID]       : 行毎のチェックボックスのID
       [ROW.JSON]     : 行毎の全データのJavaScriptオブジェクト形式 { key:val,key:val,... }
       カラムの前に修飾記号(#,$,!)を付けるとフォーマットを変更できます。
       ただし、FormatTextField 系 と FormatTable 系で、出力される形式が異なります。
                        FormatTextField 系               FormatTable 系
       [#カラム名]    : TDなしのラベルと入力フィールド   ラベルを出力
       [$カラム名]    : TDなしの入力フィールドのみ       レンデラーを出力
       [!カラム名]    : TDなしの値のみ                   値を出力

  機能分類
    画面表示
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

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

    フィールド
    修飾子とタイプ | フィールドと説明
    --- | ---
    `static String` | `JOINT_STRING` カラムID(連結文字列)行番号の連結文字列を定義 "__"
    `static int` | `NO_DISPLAY` 特殊カラム名の定義: 非表示
    `static String` | `ROW_ID_KEY` テーブル表示のチェックボックスを特定する id の 名称( id は、この名称＋行番号) "cb"
    `static int` | `SYS_JSON` 特殊カラム名の定義: [ROW.JSON]
    `static int` | `SYS_ROWNUM` 特殊カラム名の定義: 行番号 [I]

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

    コンストラクタ
    コンストラクタと説明
    `Formatter(DataModel model, String fmt)` データモデルとフォーマットを指定してフォーマッターを構築します。

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

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `String[]` | `getClmKeys()` フォーマットのカラム名配列を返します。
    `int[]` | `getClmNos()` フォーマットのカラム番号配列を返します。
    `String[]` | `getFormat()` フォーマット配列を返します。
    `String` | `getFormatString(int row)` 指定の 行番号に対する、DataModel を元に作成したフォーマット文字列を返します。
    `String` | `getFormatString(int row, String separator)` 指定の 行番号に対する、DataModel を元に作成したフォーマット文字列を返します。
    `String` | `getJson(int row)` 行毎の全データのJavaScriptオブジェクト形式 を返します。
    `String` | `getLineFormatString(DataModel model)` 引数の DataModel を元に作成したフォーマット文字列を返します。
    `String` | `getQueryFormatString()` 先のフォーマット情報の［カラム名］を、クエスチョンマークに置き換えたフォーマットを返します。
    `char[]` | `getType()` タイプ文字列配列を返します。
    `String` | `getValue(int row, int clm)` column にあるセルの属性値をStringに変換して返します。

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

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

- - ### フィールドの詳細

    - #### JOINT_STRING

          public static final String JOINT_STRING

      カラムID(連結文字列)行番号の連結文字列を定義 "__"
      関連項目:
        定数フィールド値

    - #### ROW_ID_KEY

          public static final String ROW_ID_KEY

      テーブル表示のチェックボックスを特定する id の 名称( id は、この名称＋行番号) "cb"
      関連項目:
        定数フィールド値

    - #### SYS_ROWNUM

          public static final int SYS_ROWNUM

      特殊カラム名の定義: 行番号 [I]
      関連項目:
        定数フィールド値

    - #### SYS_JSON

          public static final int SYS_JSON

      特殊カラム名の定義: [ROW.JSON]
      関連項目:
        定数フィールド値

    - #### NO_DISPLAY

          public static final int NO_DISPLAY

      特殊カラム名の定義: 非表示
      関連項目:
        定数フィールド値

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

    - #### Formatter

          public Formatter(DataModel model,
                           String fmt)

      データモデルとフォーマットを指定してフォーマッターを構築します。
      パラメータ:
        `model` - データモデル
        `fmt` - [カラム名]形式のフォーマットデータ
      変更履歴:

        6.4.3.4 (2016/03/11) Formatterに新しいコンストラクターを追加する。

  - ### メソッドの詳細

    - #### getValue

          public String getValue(int row,
                                 int clm)

      column にあるセルの属性値をStringに変換して返します。
      パラメータ:
        `row` - 処理中の行番号
        `clm` - 値が参照されるカラム番号
      戻り値:
        指定されたセルの値
      変更履歴:

        6.4.3.2 (2016/02/19) 値が null の場合は、ゼロ文字列を設定する。

    - #### getFormatString

          public String getFormatString(int row)

      指定の 行番号に対する、DataModel を元に作成したフォーマット文字列を返します。
      パラメータ:
        `row` - 行番号( [I]フォーマット処理用 )
      戻り値:
        指定のObject配列を元に作成したフォーマット文字列

    - #### getFormatString

          public String getFormatString(int row,
                                        String separator)

      指定の 行番号に対する、DataModel を元に作成したフォーマット文字列を返します。 データはseparatorで指定された区切り文字で囲まれて返されます。
      パラメータ:
        `row` - 行番号( [I]フォーマット処理用 )
        `separator` - セパレーター
      戻り値:
        内部のDataModelを元に作成したフォーマット文字列
      変更履歴:

        4.3.1.1 (2008/08/23) switch に、default label が存在しないため、追加
        6.4.3.2 (2016/02/19) 値が null の場合は、ゼロ文字列を設定する。

      このメソッドは、nullを返しません

    - #### getLineFormatString

          public String getLineFormatString(DataModel model)

      引数の DataModel を元に作成したフォーマット文字列を返します。 これは、簡易処理で、DataModel オブジェクトは、実質的には、LineModel です。 １行分の配列データを、毎回 clone() するのがちょっとなのですが、 パッケージの関連から、引数が、DataModel オブジェクトになっています。
      パラメータ:
        `model` - DataModelオブジェクト(実質的には、LineModelオブジェクト)
      戻り値:
        引数のDataModelを元に作成したフォーマット文字列
      変更履歴:

        6.3.2.0 (2015/07/10) LineModelで、Formatter処理できるように、対応します。

      このメソッドは、nullを返しません

    - #### getQueryFormatString

          public String getQueryFormatString()

      先のフォーマット情報の［カラム名］を、クエスチョンマークに置き換えたフォーマットを返します。 これは、java.sql.PreparedStatement 形式のQuery文字列を合成する場合に使用します。
      戻り値:
        PreparedStatement形式のQuery文字列
      このメソッドは、nullを返しません

    - #### getClmKeys

          public String[] getClmKeys()

      フォーマットのカラム名配列を返します。
      戻り値:
        フォーマットのカラム名配列
      このメソッドは、nullを返しません

    - #### getClmNos

          public int[] getClmNos()

      フォーマットのカラム番号配列を返します。
      戻り値:
        フォーマットのカラム番号配列
      このメソッドは、nullを返しません

    - #### getFormat

          public String[] getFormat()

      フォーマット配列を返します。
      戻り値:
        フォーマット配列
      このメソッドは、nullを返しません

    - #### getType

          public char[] getType()

      タイプ文字列配列を返します。 タイプとは、[XXX] の記述で、[#XXX] は、XXXカラムのラベルを、[$XXX]は、XXXカラムの レンデラーを、[!XXX} は、値のみ取り出す指定を行います。 主に、TextField系のフォーマットとTable系では、意味合いが異なりますので、 ご注意ください。
      戻り値:
        タイプ文字列配列 '#':ラベルのみ '$':レンデラー '!':値のみ その他:通常
      このメソッドは、nullを返しません

    - #### getJson

          public String getJson(int row)

      行毎の全データのJavaScriptオブジェクト形式 を返します。 JavaScriptオブジェクト形式とは、{ key:val,key:val,... }の形式で、 ここでは、内部設定された DataModel のすべてのカラム名をキーに、 引数で渡された 配列を 値として使用します。
      パラメータ:
        `row` - (DataModelの)行番号
      戻り値:
        指定の行番号に対応する全データのJSON形式データ
      変更履歴:

        6.4.3.2 (2016/02/19) 値が null の場合は、ゼロ文字列を設定する。

      このメソッドは、nullを返しません

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