パッケージ org.opengion.plugin.column

# クラス DBType_HMS

java.lang.Object
org.opengion.hayabusa.db.AbstractDBType
org.opengion.plugin.column.DBType_HMS

すべての実装されたインタフェース:
  `DBType`

public class DBType_HMS extends AbstractDBType
文字列の時間属性(時:分:秒)の半角の時間を扱う為の、カラム属性を定義します。 HHmmss に対応している必要があります。 (HHmmのデータでも利用可能です) ただし、日付の整合性チェックは行いませんが、valueAdd( String value )での 日付の加算時には、正式な日付データにて加算します。 タイプチェックとして、以下の条件を判定します。 ・文字列長は、直接計算で文字数との比較 ・日付使用文字チェック「('0' > c || '9' < c)以外」エラー ・文字パラメータの 正規表現チェック 例えば、24時や60分をエラーにしたい場合、｢([0-1][0-9]|[2][0-3])[0-5][0-9]｣ という 正規表現を文字パラメータに登録すれば、チェックできます。

変更履歴:
  5.4.3.6 (2012/01/20) タイプチェックが抜けているので追加
機能分類
  データ属性
導入されたバージョン:
  JDK5.0,

- ## フィールドの概要

  ### クラスから継承されたフィールド org.opengion.hayabusa.db.AbstractDBType

  `BUFFER_MIDDLE, CR`

  ### インタフェースから継承されたフィールド org.opengion.hayabusa.db.DBType

  `DEF_TYPE`

- ## コンストラクタの概要

  コンストラクタ
  コンストラクタ
  説明
  `DBType_HMS()`
  デフォルトコンストラクター

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `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`
  `valueSet(String value)`
  エディターで編集されたデータを登録する場合に、データそのものを 変換して、実登録データを作成します。

  ### クラスから継承されたメソッド org.opengion.hayabusa.db.AbstractDBType

  `getDefault, getNativeType, valueAction, valueFill, xssCheck`

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

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

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

  - ### DBType_HMS

    public DBType_HMS()
    デフォルトコンストラクター
    変更履歴:
      6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.

- ## メソッドの詳細

  - ### valueAdd

    public String valueAdd(String value)
    String引数の文字列を＋１した文字列を返します。 これは、英字の場合(A,B,C など)は、B,C,D のように,最終桁の文字コードを ＋１ します。 文字列が数字タイプの場合は, 数字に変換して、+1 します。(桁上がりもあり) 混在タイプの場合は,最後の桁だけを確認して ＋１します。 引数が null の場合と、ゼロ文字列("")の場合は,物理的初期設定値(String getDefault()) の値を返します。 24時間を超えた場合は、25時となります。
    定義:
      `valueAdd` インタフェース内 `DBType`
    オーバーライド:
      `valueAdd` クラス内 `AbstractDBType`
    パラメータ:
      `value` - String引数の文字列
    戻り値:
      String引数の文字列を＋１した文字列(１時間加算)
    変更履歴:
      6.2.2.2 (2015/04/03) 桁数可変に対応

  - ### valueAdd

    public String valueAdd(String value, String add)
    String引数の文字列に、第２引数に指定の文字列(数字、日付等)を加算して返します。 ここでは、HHmmss 形式のデータに、時間を加算します。 この HMS は、引数に、日付単位を指定できます。単位は、HHmmss 形式の １文字を指定します。大文字、小文字も識別します。value="5H" とすれば、５時間、 value="5m"とすれば、５分 追加します。 指定しない場合は、時を加算します。 ここのデータは、時間が繰り越しても、日付に影響しません。 また、２４時間を超えた場合は、00 時に戻ります。
    定義:
      `valueAdd` インタフェース内 `DBType`
    オーバーライド:
      `valueAdd` クラス内 `AbstractDBType`
    パラメータ:
      `value` - String引数
      `add` - 加算する時間文字列(単位付き:['H','m','s'])
    戻り値:
      引数の文字列に時間を加算します。
    変更履歴:
      5.6.0.3 (2012/01/24) ADD に、引数の値を加算する機能を追加します。, 5.6.1.0 (2013/02/01) 加算する引数に、日付単位('H','m','s')を指定可能にします。, 6.2.2.2 (2015/04/03) 桁数可変に対応

  - ### valueSet

    public String valueSet(String value)
    エディターで編集されたデータを登録する場合に、データそのものを 変換して、実登録データを作成します。 例えば,大文字のみのフィールドなら、大文字化します。 実登録データの作成は、DBType オブジェクトを利用しますので, これと Editor とがアンマッチの場合は、うまくデータ変換 されない可能性がありますので、注意願います。
    定義:
      `valueSet` インタフェース内 `DBType`
    オーバーライド:
      `valueSet` クラス内 `AbstractDBType`
    パラメータ:
      `value` - (一般に編集データとして登録されたデータ)
    戻り値:
      修正後の文字列(一般にデータベースに登録するデータ)
    変更履歴:
      6.2.2.2 (2015/04/03) 桁数可変に対応, 6.2.2.3 (2015/04/10) 数値変換エラーを発生させない様にします。

  - ### valueCheck

    public ErrorMessage valueCheck(String key, String value, int sizeX, int sizeY, String typeParam, boolean isStrict)
    データが登録可能かどうかをチェックします。 データがエラーの場合は、そのエラー内容を返します。
    定義:
      `valueCheck` インタフェース内 `DBType`
    オーバーライド:
      `valueCheck` クラス内 `AbstractDBType`
    パラメータ:
      `key` - キー
      `value` - 値
      `sizeX` - 整数部分の文字列の長さ
      `sizeY` - 小数部分の文字列の長さ
      `typeParam` - dbType パラメータ(文字パラメータ)
      `isStrict` - 厳密にチェックするかどうか[true:する/false:標準的]
    戻り値:
      エラー内容
    変更履歴:
      5.2.3.6 (2012/01/20) 数値のみに限定するために追加, 5.6.0.3 (2012/01/24) ADD に、引数の値を加算する機能を追加します。, 6.2.2.2 (2015/04/03) 桁数可変に対応, 6.8.4.1 (2017/12/18) 24時間以上の表記に対応するため、isStrict属性を加味します。, 7.2.5.1 (2020/06/05) 数値変換エラーの前にチェックを入れます。
    このﾒｿｯﾄﾞは、nullを返しません