## wisdom.core.util
クラス TimestampUtil

    java.lang.Object
      wisdom.core.CoreObject
          wisdom.core.util.TimestampUtil

public class TimestampUtil
extends CoreObject

日付（年月日）時間（時分秒）を含んだ検査のためのユーティリティ・クラス
日付、時間の妥当性検査および値をTimestampで取得することができます。

バージョン:
  1
作成者:
  Takao Kouda

フィールドの概要
`static int` `VALIDATE_LVL_NONE` 妥当性検査のための定数 すべての未入力を許可します。
`static int` `VALIDATE_LVL_YYYY` 妥当性検査のための定数 年以降の未入力を許可します。
`static int` `VALIDATE_LVL_YYYYMM` 妥当性検査のための定数 月以降の未入力を許可します。
`static int` `VALIDATE_LVL_YYYYMMDD` 妥当性検査のための定数 日以降の未入力を許可します。
`static int` `VALIDATE_LVL_YYYYMMDD_HH` 妥当性検査のための定数 年、月、日、時以降の未入力を許可します。
`static int` `VALIDATE_LVL_YYYYMMDD_HHMM` 妥当性検査のための定数 年、月、日、時、分以降の未入力を許可します。
`static int` `VALIDATE_LVL_YYYYMMDD_HHMMSS` 妥当性検査のための定数 すべて必須指定となります。

コンストラクタの概要
`TimestampUtil()` コンストラクタ 検査レベルは`VALIDATE_LVL_YYYYMMDD_HHMMSS`です。
`TimestampUtil(int validateLvl)` コンストラクタ

メソッドの概要
`java.sql.Timestamp` `getMaxTimestamp()` このオブジェクトの値の最大値をjava.sql.Timestampで取得します。
`java.lang.String` `getMessage(int errorNo)` isValid()の戻り値からどの項目の値が正しくないのか、文字表現で取得します。
`java.sql.Timestamp` `getMinTimestamp()` このオブジェクトの値の最小値をjava.sql.Timestampで取得します。
`int` `getValidateLvl()` 検査レベルを取得します。
`int` `isValid()` このオブジェクトが時間を含む日付として妥当か否かを検査します。
`void` `setDate(int year, int month, int day)` 年月日を指定します。
`void` `setDate(java.lang.String year, java.lang.String month, java.lang.String day)` 年月日を指定します。
`void` `setDay(int day)` 日を設定します。
`void` `setDay(java.lang.String day)` 日を設定します。
`void` `setHour(int hour)` 時間を設定します。
`void` `setHour(java.lang.String hour)` 時間を設定します。
`void` `setMinute(int minute)` 分を設定します。
`void` `setMinute(java.lang.String minute)` 分を設定します。
`void` `setMonth(int month)` 月を設定します。
`void` `setMonth(java.lang.String month)` 月を設定します。
`void` `setSecond(int second)` 秒を設定します。
`void` `setSecond(java.lang.String second)` 秒を設定します。
`void` `setTime(int hour, int minute, int second)` 時間を指定します。
`void` `setTime(java.lang.String hour, java.lang.String minute, java.lang.String second)` 時間を指定します。
`void` `setYear(int year)` 年を設定します。
`void` `setYear(java.lang.String year)` 年を設定します。

クラス java.lang.Object から継承したメソッド
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

フィールドの詳細

### VALIDATE_LVL_NONE

    public static final int VALIDATE_LVL_NONE

  妥当性検査のための定数
  すべての未入力を許可します。

  関連項目:
    定数フィールド値

### VALIDATE_LVL_YYYY

    public static final int VALIDATE_LVL_YYYY

  妥当性検査のための定数
  年以降の未入力を許可します。

  関連項目:
    定数フィールド値

### VALIDATE_LVL_YYYYMM

    public static final int VALIDATE_LVL_YYYYMM

  妥当性検査のための定数
  月以降の未入力を許可します。

  関連項目:
    定数フィールド値

### VALIDATE_LVL_YYYYMMDD

    public static final int VALIDATE_LVL_YYYYMMDD

  妥当性検査のための定数
  日以降の未入力を許可します。

  関連項目:
    定数フィールド値

### VALIDATE_LVL_YYYYMMDD_HH

    public static final int VALIDATE_LVL_YYYYMMDD_HH

  妥当性検査のための定数
  年、月、日、時以降の未入力を許可します。

  関連項目:
    定数フィールド値

### VALIDATE_LVL_YYYYMMDD_HHMM

    public static final int VALIDATE_LVL_YYYYMMDD_HHMM

  妥当性検査のための定数
  年、月、日、時、分以降の未入力を許可します。

  関連項目:
    定数フィールド値

### VALIDATE_LVL_YYYYMMDD_HHMMSS

    public static final int VALIDATE_LVL_YYYYMMDD_HHMMSS

  妥当性検査のための定数
  すべて必須指定となります。

  関連項目:
    定数フィールド値

コンストラクタの詳細

### TimestampUtil

    public TimestampUtil()

  コンストラクタ
  検査レベルは`VALIDATE_LVL_YYYYMMDD_HHMMSS`です。

### TimestampUtil

    public TimestampUtil(int validateLvl)

  コンストラクタ

パラメータ:
  `validateLvl` - 検査レベル

メソッドの詳細

### getMinTimestamp

    public java.sql.Timestamp getMinTimestamp()

  このオブジェクトの値の最小値をjava.sql.Timestampで取得します。
  このメソッドを実行すると`TimestampUtil#isValid()` の戻り値が0の場合に内部の値を
  Timestampに変換します。必須入力項目となっていない値の場合、最小値が設定されます。

  戻り値:
    変換されたTimestamp`TimestampUtil#isValid()` が行われていない、または同メソッドの戻り値が0以外のオブジェクトの場合null。

### getMaxTimestamp

    public java.sql.Timestamp getMaxTimestamp()

  このオブジェクトの値の最大値をjava.sql.Timestampで取得します。
  このメソッドを実行すると`TimestampUtil#isValid()` の戻り値が0の場合に内部の値を
  Timestampに変換します。必須入力項目となっていない値の場合、最大値が設定されます。

  戻り値:
    変換されたTimestamp`TimestampUtil#isValid()` が行われていない、または同メソッドの戻り値が0以外のオブジェクトの場合null。

### isValid

    public int isValid()

  このオブジェクトが時間を含む日付として妥当か否かを検査します。
  検査はオブジェクトに指定された検査レベルにより必須入力項目が判断され、年、月、日、時、分、秒のすべての値が
  正常な場合0を戻します。
  指定された検査レベルより低い項目は、値が設定されても検査の対象にはなりません
  指定された項目の上位（月ならば年、日であれば月）が未指定あるいは妥当性がない場合、上位項目がエラーとなります。
  日が入力され、月が2の場合うるう年の検査も行われます。
  戻り値は

  戻り値 | エラー内容
  0 | 正常
  1 | 秒
  2 | 分
  3 | 時
  4 | 日
  5 | 月
  6 | 年

  です。

  戻り値:
    正しい場合は0

### getMessage

    public java.lang.String getMessage(int errorNo)

  isValid()の戻り値からどの項目の値が正しくないのか、文字表現で取得します。

  パラメータ:
    `errorNo` - `TimestampUtil#isValid()の戻り値`
  戻り値:
    正しくない項目の文字表現

### setDate

    public void setDate(int year,
                        int month,
                        int day)

  年月日を指定します。

  パラメータ:
    `year` - 指定する年
    `month` - 指定する月
    `day` - 指定する日

### setDate

    public void setDate(java.lang.String year,
                        java.lang.String month,
                        java.lang.String day)

  年月日を指定します。

  パラメータ:
    `year` - 指定する年
    `month` - 指定する月
    `day` - 指定する日

### setTime

    public void setTime(int hour,
                        int minute,
                        int second)

  時間を指定します。

  パラメータ:
    `hour` - 指定する時
    `minute` - 指定する分
    `second` - 指定する秒

### setTime

    public void setTime(java.lang.String hour,
                        java.lang.String minute,
                        java.lang.String second)

  時間を指定します。

  パラメータ:
    `hour` - 指定する時
    `minute` - 指定する分
    `second` - 指定する秒

### setYear

    public void setYear(int year)

  年を設定します。

  パラメータ:
    `year` - 設定する年

### setMonth

    public void setMonth(int month)

  月を設定します。

  パラメータ:
    `month` - 設定する月

### setDay

    public void setDay(int day)

  日を設定します。

  パラメータ:
    `day` - 設定する日

### setHour

    public void setHour(int hour)

  時間を設定します。

  パラメータ:
    `hour` - 設定する時間

### setMinute

    public void setMinute(int minute)

  分を設定します。

  パラメータ:
    `minute` - 設定する分

### setSecond

    public void setSecond(int second)

  秒を設定します。

  パラメータ:
    `second` - 設定する秒

### setYear

    public void setYear(java.lang.String year)

  年を設定します。

  パラメータ:
    `year` - 設定する年

### setMonth

    public void setMonth(java.lang.String month)

  月を設定します。

  パラメータ:
    `month` - 設定する月

### setDay

    public void setDay(java.lang.String day)

  日を設定します。

  パラメータ:
    `day` - 設定する日

### setHour

    public void setHour(java.lang.String hour)

  時間を設定します。

  パラメータ:
    `hour` - 設定する時間

### setMinute

    public void setMinute(java.lang.String minute)

  分を設定します。

  パラメータ:
    `minute` - 設定する分

### setSecond

    public void setSecond(java.lang.String second)

  秒を設定します。

  パラメータ:
    `second` - 設定する秒

### getValidateLvl

    public int getValidateLvl()

  検査レベルを取得します。

  戻り値:
    検査レベル