パッケージ org.opengion.hayabusa.db

## インタフェース DBType

- 既知の実装クラスのリスト:
    `AbstractDBType`, `DBType_ALL`, `DBType_CRYPT`, `DBType_DATE`, `DBType_DD`, `DBType_HMS`, `DBType_K`, `DBType_KX`, `DBType_MD5`, `DBType_NVAR`, `DBType_R`, `DBType_S9`, `DBType_SHA`, `DBType_X`, `DBType_X9`, `DBType_XH`, `DBType_XHU`, `DBType_XK`, `DBType_XKZ`, `DBType_XL`, `DBType_XLU9`, `DBType_XU`, `DBType_XU9`, `DBType_YM`, `DBType_YM01`, `DBType_YM31`, `DBType_YMD`, `DBType_YMDH`

      public interface DBType

  データベースのカラム属性のうち、静的論理属性を規定する情報を保持しているオブジェクトです。 このインターフェースを実装したクラスは、カラムの名前、ラベル、桁数、 種類(文字、数字、日付)やタイプ(全角、半角、大文字、小文字)の情報を 持っています。さらに、そのカラムの表示方法(CellRenderer)や、 編集方法(CellEditor)を静的に割り当てる事が可能です。 これらは，カラムの静的情報であって、そのカラムに対する値を保持したり 各アプリケーション毎に変更される情報は持っていません。すべての画面で 同一の情報を保持しています。 データを登録する場合の最低限の整合性チェックは、このクラスを用いて 行います。 チェック方法は、種類やタイプで異なりますが，それらはこのインターフェース を実装したサブクラス毎に異なります。
  機能分類
    データ属性
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

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

    フィールド
    修飾子とタイプ | フィールド | 説明
    --- | --- | ---
    `static String` | `DEF_TYPE` | 初期タイプ

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド abstractメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `String` | `getDefault()` | そのDBTypeの,デフォルトの値(物理的初期設定値)を返します。
    `NativeType` | `getNativeType()` | NATIVEの型の識別コードを返します。
    `String` | `valueAction​(String action, String oldValue, String newValue)` | action で指定されたコマンドを実行して、値の変換を行います。
    `String` | `valueAdd​(String value)` | String引数の文字列を＋１した文字列を返します。
    `String` | `valueAdd​(String value, String add)` | String引数の文字列に、第２引数に指定の文字列(数字、日付等)を加算して返します。
    `ErrorMessage` | `valueCheck​(String key, String value, int sizeX, int sizeY, String typeParam, boolean isStrict)` | データが登録可能かどうかをチェックします。
    `String` | `valueFill​(String value, int sizeX, int sizeY, String encode)` | 文字タイプに応じた方法で固定長に変換した文字列を返します。
    `String` | `valueSet​(String value)` | エディターで編集されたデータを登録する場合に、データそのものを 変換して、実登録データを作成します。

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

    - #### DEF_TYPE

          static final String DEF_TYPE

      初期タイプ
      関連項目:
        定数フィールド値

  - ### メソッドの詳細

    - #### getNativeType

          NativeType getNativeType()

      NATIVEの型の識別コードを返します。
      戻り値:
        NATIVEの型の識別コード(DBType で規定)
      関連項目:
        `NativeType`
      変更履歴:
        3.5.4.7 (2004/02/06) 新規作成, 4.1.1.2 (2008/02/28) Enum型(fukurou.model.NativeType)に変更

    - #### valueFill

          String valueFill​(String value,
                           int sizeX,
                           int sizeY,
                           String encode)

      文字タイプに応じた方法で固定長に変換した文字列を返します。 例えば，全角なら全角スペースで、数字タイプならゼロ埋めします。
      パラメータ:
        `value` - ＦＩＬＬ埋めする文字列
        `sizeX` - 整数部分の文字列の長さ
        `sizeY` - 小数部分の文字列の長さ
        `encode` - 固定長で変換する文字エンコード
      戻り値:
        ＦＩＬＬ埋めした新しい文字列
      変更履歴:
        3.5.4.5 (2004/01/23) エンコード指定に変更します。

    - #### getDefault

          String getDefault()

      そのDBTypeの,デフォルトの値(物理的初期設定値)を返します。 一般に、文字列の場合は,ゼロストリング"" 数字の場合は "0" です。
      戻り値:
        物理的初期設定値

    - #### valueAdd

          String valueAdd​(String value)

      String引数の文字列を＋１した文字列を返します。 これは、英字の場合(A,B,C など)は、B,C,D のように,最終桁の文字コードを ＋１ します。 文字列が数字タイプの場合は, 数字に変換して、+1 します。(桁上がりもあり) 混在タイプの場合は,最後の桁だけを確認して ＋１します。 引数が null の場合と、ゼロ文字列("")の場合は,物理的初期設定値(String getDefault()) の値を返します。
      パラメータ:
        `value` - String引数
      戻り値:
        引数の文字列を＋１した文字列。

    - #### valueAdd

          String valueAdd​(String value,
                          String add)

      String引数の文字列に、第２引数に指定の文字列(数字、日付等)を加算して返します。 これは、valueAdd( String ) と本質的には同じ動きをしますが、任意の文字列を加算する ため、主として、数字系や日付系の DBType にのみ実装します。 実装がない場合は、UnsupportedOperationException を throw します。 第２引数 が、null の場合は、＋１ する valueAdd( String )が呼ばれます。 これは、将来的には、valueAdd( String ) を無くすことを意味します。
      パラメータ:
        `value` - String引数
        `add` - 加算する文字列(null の場合は、従来と同じ、+1 します。)
      戻り値:
        引数の文字列第２引数に指定の文字列(数字、日付等)を加算した文字列。
      例外:
        `UnsupportedOperationException` - 実装が存在しない場合
      変更履歴:
        5.6.0.3 (2012/01/24) ADD に、引数の値を加算する機能を追加します。

    - #### valueSet

          String valueSet​(String value)

      エディターで編集されたデータを登録する場合に、データそのものを 変換して、実登録データを作成します。 例えば,大文字のみのフィールドなら、大文字化します。 実登録データの作成は、DBType オブジェクトを利用しますので, これと CellEditor とがアンマッチの場合は、うまくデータ変換 されない可能性がありますので、注意願います。
      パラメータ:
        `value` - (一般に編集データとして登録されたデータ)
      戻り値:
        修正後の文字列(一般にデータベースに登録するデータ)

    - #### valueAction

          String valueAction​(String action,
                             String oldValue,
                             String newValue)

      action で指定されたコマンドを実行して、値の変換を行います。 oldValue(旧データ)は、元のDBTableModelに設定されていた値です。通常は、 この値を使用してカラム毎に変換を行います。newValue(新データ)は、引数で 指定された新しい値です。この値には、パラメータを指定して変換方法を 制御することも可能です。 指定のアクションがカラムで処理できない場合は、エラーになります。
      パラメータ:
        `action` - アクションコマンド
        `oldValue` - 入力データ(旧データ)
        `newValue` - 入力データ(新データ)
      戻り値:
        実行後のデータ

    - #### valueCheck

          ErrorMessage valueCheck​(String key,
                                  String value,
                                  int sizeX,
                                  int sizeY,
                                  String typeParam,
                                  boolean isStrict)

      データが登録可能かどうかをチェックします。 データがエラーの場合は、そのエラー内容を返します。
      パラメータ:
        `key` - キー
        `value` - 値
        `sizeX` - 整数部分の文字列の長さ
        `sizeY` - 小数部分の文字列の長さ
        `typeParam` - dbType パラメータ
        `isStrict` - 厳密にチェックするかどうか [true:する/false:標準的]
      戻り値:
        エラー内容
      変更履歴:
        3.6.0.0 (2004/09/22) dbType パラメータを引数に追加, 5.2.2.0 (2010/11/01) 厳密にチェック(isStrict=true)するフラグを追加