パッケージ org.opengion.fukurou.model

## インタフェース DataModel<T>

- 既知のサブインタフェースのリスト:
    `DBTableModel`
  既知の実装クラスのリスト:
    `ArrayDataModel`, `ArrayTableModel`, `DBTableModelEditor`, `DBTableModelImpl`, `DBTableModelSorter`, `FileLineModel`, `LineModel`

      public interface DataModel<T>

  １レコードのデータを管理するインターフェースです。 Formatter で使用される単純なメソッドを定義しています。
  機能分類
    画面表示
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    フィールド
    修飾子とタイプ | フィールド | 説明
    --- | --- | ---
    `static String` | `DELETE_TYPE` | 変更されたタイプ(削除)
    `static String` | `INSERT_TYPE` | 変更されたタイプ(追加)
    `static String` | `UPDATE_TYPE` | 変更されたタイプ(変更)

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド abstractメソッド デフォルト・メソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `int` | `getColumnNo​(String columnName)` | カラム名に対応する カラム番号を返します。
    `default String` | `getModifyType​(int row)` | row 単位に変更されたタイプ(追加/変更/削除)を返します。
    `String[]` | `getNames()` | カラム名配列を返します。
    `NativeType` | `getNativeType​(int clm)` | clm のNativeタイプを返します。
    `default int` | `getRowCount()` | データテーブル内の行の数を返します。
    `T` | `getValue​(int row, int clm)` | row および clm にあるセルの属性値を返します。
    `T[]` | `getValues​(int row)` | row にあるセルの属性値を配列で返します。
    `default void` | `setModifyType​(int row, String modType)` | row 単位に変更タイプ(追加/変更/削除)をセットします。
    `void` | `setValues​(T[] vals, int row)` | row にあるセルのオブジェクト値を置き換えます。

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

    - #### INSERT_TYPE

          static final String INSERT_TYPE

      変更されたタイプ(追加)
      関連項目:
        定数フィールド値
      変更履歴:
        6.7.9.1 (2017/05/19) インターフェースの見直しにより、追加

    - #### UPDATE_TYPE

          static final String UPDATE_TYPE

      変更されたタイプ(変更)
      関連項目:
        定数フィールド値
      変更履歴:
        6.7.9.1 (2017/05/19) インターフェースの見直しにより、追加

    - #### DELETE_TYPE

          static final String DELETE_TYPE

      変更されたタイプ(削除)
      関連項目:
        定数フィールド値
      変更履歴:
        6.7.9.1 (2017/05/19) インターフェースの見直しにより、追加

  - ### メソッドの詳細

    - #### setValues

          void setValues​(T[] vals,
                         int row)

      row にあるセルのオブジェクト値を置き換えます。
      パラメータ:
        `vals` - 新しい配列値。
        `row` - 値が変更される行(無視されます)

    - #### getColumnNo

          int getColumnNo​(String columnName)

      カラム名に対応する カラム番号を返します。 特殊なカラムが指定された場合は、負の値を返します。 例えば、[KEY.カラム名]、[I]、[ROW.ID] など、特定の負の値を返します。 また、カラム名が元のデータモデルに存在しない場合も、負の値か、 Exception を返します。負の値なのか、Exception なのかは、 実装に依存します。
      パラメータ:
        `columnName` - 値が参照されるカラム番号
      戻り値:
        指定されたセルのカラム番号

    - #### getNames

          String[] getNames()

      カラム名配列を返します。 配列オブジェクトは、clone されたコピーを返します。
      戻り値:
        カラム名配列

    - #### getValues

          T[] getValues​(int row)

      row にあるセルの属性値を配列で返します。
      パラメータ:
        `row` - 値が参照される行
      戻り値:
        指定されたセルの属性値

    - #### getValue

          T getValue​(int row,
                     int clm)

      row および clm にあるセルの属性値を返します。
      パラメータ:
        `row` - 値が参照される行
        `clm` - 値が参照される列
      戻り値:
        指定されたセルの値 T

    - #### getRowCount

          default int getRowCount()

      データテーブル内の行の数を返します。 後付I/Fのため、default 設定しておきます。
      戻り値:
        モデルの行数
      変更履歴:
        6.7.9.1 (2017/05/19) インターフェースの見直しにより、追加

    - #### getModifyType

          default String getModifyType​(int row)

      row 単位に変更されたタイプ(追加/変更/削除)を返します。 後付I/Fのため、default 設定しておきます。
      パラメータ:
        `row` - 値が参照される行
      戻り値:
        変更されたタイプの値 String
      変更履歴:
        6.7.9.1 (2017/05/19) インターフェースの見直しにより、追加

    - #### setModifyType

          default void setModifyType​(int row,
                                     String modType)

      row 単位に変更タイプ(追加/変更/削除)をセットします。 このメソッドでは、データのバックアップは取りません。 タイプは始めに一度登録するとそれ以降に変更はかかりません。 なにも変更されていない場合は, ""(ゼロストリング)の状態です。 後付I/Fのため、default 設定しておきます。
      パラメータ:
        `row` - 値が参照される行
        `modType` - 変更タイプ(追加/変更/削除)
      変更履歴:
        6.7.9.1 (2017/05/19) インターフェースの見直しにより、追加

    - #### getNativeType

          NativeType getNativeType​(int clm)

      clm のNativeタイプを返します。 Nativeタイプはorg.opengion.fukurou.model.NativeTypeで定義されています。
      パラメータ:
        `clm` - 値が参照される列
      戻り値:
        Nativeタイプ
      関連項目:
        `NativeType`
      変更履歴:
        4.1.1.2 (2008/02/28) 新規追加