クラス AbstractCheckLibrary

java.lang.Object
jp.ne.mki.wedge.pub.data.check.AbstractCheckLibrary
すべての実装されたインタフェース:
jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
直系の既知のサブクラス:
CodePointByteCheckLibrary, CodePointLengthCheckLibrary, DefaultCheckLibrary

public abstract class AbstractCheckLibrary extends Object implements jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface

チェックを行う共通Library抽象クラス

共通Libraryの抽象クラスになります。
基本的なチェック動作はこのクラスにて処理が行われます。

このクラスを使用することにより発生するチェックエラーコードは以下になります。

エラー内容エラーコード引数1引数2引数3引数4
型チェック(コード)エラーCKE0001チェック対象値エラーとなった文字桁位置
型チェック(数字)エラーCKE0002チェック対象値
型チェック(英字)エラーCKE0003チェック対象値エラーとなった文字桁位置エラーとなった文字
型チェック(日付時間)エラーCKE0004チェック対象値
型チェック(日付)エラーCKE0005チェック対象値
型チェック(時間)エラーCKE0006チェック対象値
長さオーバーエラー(NUMBER以外)CKE0007チェック対象値DMCで指定された長さ
固定長長さエラー(NUMBER以外)CKE0008チェック対象値DMCで指定された長さ
省略不可チェックエラーCKE0009チェック対象値DMCで指定された長さ実値の長さ判定文字コード
選択肢(ENUM)チェックエラーCKE0010チェック対象値DMCで指定された選択肢
最小値チェックエラーCKE0011チェック対象値DMCで指定された最小値
最大値チェックエラーCKE0012チェック対象値DMCで指定された最大値
型チェック(英数字)エラーCKE0013チェック対象値エラーとなった文字桁位置エラーとなった文字
型チェック(整数)エラーCKE0014チェック対象値
型チェック(半角カナ)エラーCKE0016チェック対象値
ピリオド存在エラーCKE0017チェック対象値DMCで指定された長さDMCで指定された小数点以下
型チェック(全角英数字)エラーCKE0018チェック対象値
長さオーバーエラー(NUMBER)CKE0019チェック対象値DMCで指定された長さDMCで指定された小数点以下
固定長長さエラー(NUMBER)CKE0020チェック対象値DMCで指定された長さDMCで指定された小数点以下

エラー発生時のメッセージは、このクラスに設定されたResourceBundleが使用されます。
メッセージを変更したい場合には、リソースpropertiesファイルを作成し、Configにリソースパスを指定します。
デフォルトのリソースは "jp.ne.mki.wedge.pub.data.check.CheckLibraryMessageVer2" になります。

導入されたバージョン:
ver1.2.0-12
  • フィールドの概要

    インタフェースから継承されたフィールド jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface

    ERRORCODE_ALPHABET_TYPE_NUMBER, ERRORCODE_ENUM, ERRORCODE_FIX, ERRORCODE_FIX_NUMBER, ERRORCODE_FULL_FONT, ERRORCODE_HALF_FONT, ERRORCODE_LENGTH, ERRORCODE_LENGTH_NUMBER, ERRORCODE_MAXIMUM, ERRORCODE_MINIMUM, ERRORCODE_NUMBER_PILIOD, ERRORCODE_OMIT, ERRORCODE_POSITIVE_TYPE_NUMBER, ERRORCODE_TYPE_ALPHABET, ERRORCODE_TYPE_CODE, ERRORCODE_TYPE_DATE, ERRORCODE_TYPE_DATE_TIME, ERRORCODE_TYPE_FULL_ALPHABET_NUMBER, ERRORCODE_TYPE_HALF_KANA, ERRORCODE_TYPE_NUMBER, ERRORCODE_TYPE_TIME
  • コンストラクタの概要

    コンストラクタ
    コンストラクタ
    説明
     
  • メソッドの概要

    修飾子とタイプ
    メソッド
    説明
    check(String value, int dataType, boolean isOmitCheck, String[] dataEnum, int length, int scale, boolean isFix, boolean isOmit, String minimum, String maximum)
    共通チェック全実行
    項目チェックにて実行されるチェック処理になります。
    protected abstract boolean
    checkAllDataType(CheckResult result, String value, int dataType)
    全てのデータタイプに対してチェック。
    protected boolean
    checkAllDataType4RealTime(CheckResult result, String value, String insertString, int offs, int dataType)
    全てのデータタイプに対してチェック。
    protected boolean
    checkAlphabet(CheckResult result, String value, boolean isRealTimeCheck)
    英字チェック
    protected boolean
    checkAlphabetNumber(CheckResult result, String value, boolean isRealTimeCheck)
    半角英数字チェック
    protected boolean
    checkCode(CheckResult result, String value, boolean isRealTimeCheck)
    コードチェック 0x7F 以上のときにはチェックエラーになります。
    protected boolean
    checkDate(CheckResult result, String value, boolean isRealTimeCheck)
    日付チェック
    日付(yyyyMMdd)として正しい値になっているかどうかをチェックします。
    protected boolean
    checkDateTime(CheckResult result, String value, boolean isRealTimeCheck)
    日付時間チェック
    日付時間(yyyyMMddHHmmss)として正しい値になっているかどうかをチェックします。
    protected boolean
    checkEnum(CheckResult result, String data, String[] dataEnum)
    選択肢(ENUM)チェック
    protected boolean
    checkFullAlphabetNumber(CheckResult result, String value, boolean isRealTimeCheck)
    全角英数字チェック
    protected boolean
    checkFullFont(CheckResult result, String value, boolean isRealTimeCheck)
    全角文字チェック
    protected boolean
    checkHalfFont(CheckResult result, String value, boolean isRealTimeCheck)
    半角文字チェック
    protected boolean
    checkHalfKana(CheckResult result, String value, boolean isRealTimeCheck)
    半角カナチェック
    半角カナ文字(LibraryCommon.checkHalfKana)と、記号(LibraryCommon.checkSignString)のみ可
    protected boolean
    checkLength(CheckResult result, String data, int length, boolean isFix)
    長さチェック
    固定長である場合は固定長チェックを行った後、値の桁数のチェックを行います。
    protected boolean
    checkLength(CheckResult result, String data, int length, int scale, boolean isFix, int dataType)
    長さチェック
    データタイプが「数字」の場合は checkNumberLength それ以外は checkLength を実行します。
    protected boolean
    checkMaximum(CheckResult result, String data, String maximum, int dataType)
    最大値チェック
    DataTypeがNUMBERのときには数値比較、それ以外の場合には文字比較を行います。
    protected boolean
    checkMinimum(CheckResult result, String data, String minimum, int dataType)
    最小値チェック
    NUMBER型のときには 数値用比較、NUMBER以外のときは文字用比較を行います。
    protected boolean
    checkNumber(CheckResult result, String value, boolean isRealTimeCheck)
    数字チェック
    protected boolean
    checkNumberLength(CheckResult result, String data, int length, int scale, boolean isFix)
    長さチェック 数値型専用チェック
    [.]
    protected boolean
    checkOmit(CheckResult result, String value)
    省略チェック
    protected boolean
    checkPositiveNumber(CheckResult result, String value, boolean isRealTimeCheck)
    正数チェック
    protected boolean
    checkTime(CheckResult result, String value, boolean isRealTimeCheck)
    時間チェック
    時間(HHmmss)として正しい値になっているかどうかをチェックします。
    protected boolean
    checkType(CheckResult result, String value, int dataType, boolean isRealTimeCheck)
    型のチェック
    データタイプに基づいたチェックを実行します
    protected String
    createCheckString4InsertCheck(String text, String insertStr, int offs)
    チェック用文字列作成
    offsの値はTEXTのDocumentクラスから渡ってくるものになります。
    protected byte[]
    getBytes(String value, String charSet)
    バイト配列取得
    Configに文字コード指定がある場合には、その文字コードを元にバイト配列を取得する。
    バイト数判定のための文字セットを取得する。
    protected abstract int
    チェックに使用するデータの長さを取得する。
    エラーメッセージ用ResourceBundleを取得する
    isInsertOk(String text, String insertStr, int offs, int dataType, int dataLength, int dataScale)
    リアルタイム用チェック実行
    リアルタイムチェックにて使用され、文字を挿入できるかどうかのチェックを行います
    このメソッドは、テキスト系Componentにてリアルタイムチェックの指定をした場合に、 Keyにて文字入力されたタイミングにて、実行エンジンからCallされます。
    protected boolean
    isValidChar(String value, int dataType)
    文字のチェックを行うかどうかを判断します。
    void
    setCharSet(String charSet)
    バイト数判定のための文字セットを設定する。
    protected CheckResult
    setCheckResult(CheckResult result, boolean isResult, String errorCode, Object[] messageArgs)
    チェック結果オブジェクトに値を設定する
    void
    エラーメッセージ用ResourceBundleを設定する

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

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • AbstractCheckLibrary

      public AbstractCheckLibrary()
  • メソッドの詳細

    • check

      public CheckResult check(String value, int dataType, boolean isOmitCheck, String[] dataEnum, int length, int scale, boolean isFix, boolean isOmit, String minimum, String maximum)
      共通チェック全実行
      項目チェックにて実行されるチェック処理になります。
      処理されるチェックの順番は、以下になります。
      1. 省略チェック(checkOmit)
      2. 文字チェック対象対象かどうかの判断(isValidChar)
      3. 全てのデータタイプについて共通のチェック(checkAllDataType)
      4. 型チェック(checkType)
      5. 選択肢チェック(checkEnum)
      6. 長さチェック(checkLength)
      7. 最小値チェック(checkMinimum)
      8. 最大値チェック(checkMaximum)
      定義:
      check インタフェース内 jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
      パラメータ:
      value - チェック対象の値
      dataType - データタイプ
      isOmitCheck - trueの場合には省略のチェックも実行されます。
      dataEnum - Enumに設定された値
      length - 長さ
      scale - 小数点桁数
      isFix - 固定長かどうか
      isOmit - 省略不可かどうか
      minimum - 最小値
      maximum - 最大値
      戻り値:
      CheckResult チェック結果
    • isInsertOk

      public CheckResult isInsertOk(String text, String insertStr, int offs, int dataType, int dataLength, int dataScale)
      リアルタイム用チェック実行
      リアルタイムチェックにて使用され、文字を挿入できるかどうかのチェックを行います
      このメソッドは、テキスト系Componentにてリアルタイムチェックの指定をした場合に、 Keyにて文字入力されたタイミングにて、実行エンジンからCallされます。
      処理されるチェックの順番は、以下になります。
      1. 文字チェック対象対象かどうかの判断(isValidChar)
      2. 全てのデータタイプについて共通のチェック(checkAllDataType)
      3. 型チェック(checkType)
      4. 長さチェック(checkLength)
      定義:
      isInsertOk インタフェース内 jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
      パラメータ:
      text - チェック対象の値
      insertStr - 挿入対象文字列
      offs - 挿入オフセット
      dataType - データタイプ
      dataLength - 長さ
      dataScale - 小数点桁数
      戻り値:
      CheckResult チェック結果
    • createCheckString4InsertCheck

      protected String createCheckString4InsertCheck(String text, String insertStr, int offs)
      チェック用文字列作成
      offsの値はTEXTのDocumentクラスから渡ってくるものになります。 offsの値は コードポイント桁数ではないようです。
      パラメータ:
      text -
      insertStr -
      offs -
      戻り値:
    • checkOmit

      protected boolean checkOmit(CheckResult result, String value)
      省略チェック
      パラメータ:
      result -
      value -
      戻り値:
    • isValidChar

      protected boolean isValidChar(String value, int dataType)
      文字のチェックを行うかどうかを判断します。
      バイナリ、オブジェクト 型 もしくは 設定なし の場合は falseが返ります。
      値が 0桁のときには false が帰ります。
      パラメータ:
      value - 対象文字列
      int - データタイプ
      戻り値:
      boolean 結果
    • checkAllDataType

      protected abstract boolean checkAllDataType(CheckResult result, String value, int dataType)
      全てのデータタイプに対してチェック。
      使用不可能文字のチェックなどを組み込みこみます。
      パラメータ:
      result - チェック結果格納オブジェクト
      value - 対象文字列
      dataType - データタイプ
      戻り値:
      boolean チェック結果
    • checkAllDataType4RealTime

      protected boolean checkAllDataType4RealTime(CheckResult result, String value, String insertString, int offs, int dataType)
      全てのデータタイプに対してチェック。(リアルタイムチェック用)
      デフォルトでは、 insertString(追加しようとしている文字)を checkAllDataTypeに渡してチェックします。
      パラメータ:
      result - チェック結果格納オブジェクト
      value - 追加後の全体文字列
      insertString - 追加しようとしている文字
      offs - 追加しようとしている文字のOffset
      戻り値:
    • getLength

      protected abstract int getLength(String data)
      チェックに使用するデータの長さを取得する。
      チェック処理により、桁数 or バイト桁数 or CodePoint数 などが返るようにする
      パラメータ:
      data -
      戻り値:
    • checkType

      protected boolean checkType(CheckResult result, String value, int dataType, boolean isRealTimeCheck)
      型のチェック
      データタイプに基づいたチェックを実行します
      パラメータ:
      result - 結果情報格納クラス
      value - チェック対象文字列
      dataType - データタイプ
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkLength

      protected boolean checkLength(CheckResult result, String data, int length, int scale, boolean isFix, int dataType)
      長さチェック
      データタイプが「数字」の場合は checkNumberLength それ以外は checkLength を実行します。
      パラメータ:
      result - チェック結果格納オブジェクト
      data - チェック対象文字列
      length - 長さ桁数
      scale - 小数点以下桁数
      isFix - 固定長タイプであるかどうか
      dataType - データタイプ
      戻り値:
      boolean 結果
    • checkLength

      protected boolean checkLength(CheckResult result, String data, int length, boolean isFix)
      長さチェック
      固定長である場合は固定長チェックを行った後、値の桁数のチェックを行います。
      パラメータ:
      result - チェック結果格納オブジェクト
      data - チェック対象文字列
      length - 有効桁数
      isFix - 固定長
      戻り値:
      boolean 結果
    • checkNumberLength

      protected boolean checkNumberLength(CheckResult result, String data, int length, int scale, boolean isFix)
      長さチェック 数値型専用チェック
      [.](ピリオド)にて値を分割し、整数部、小数部それぞれのチェックを行います。
      値のはじめに[+]or[-]が在る場合にはその文字は整数部桁数には含めずチェックを行います。
      小数部桁数が0指定で、[.](ピリオド)が在る場合にはエラーになります。
      上記にチェック後、固定長チェックをおこないます。
      パラメータ:
      result - チェック結果格納オブジェクト
      data - チェック対象文字列
      length - 有効桁数(整数部)
      scale - 有効桁数(小数部)
      isFix - 固定長
      戻り値:
      boolean 結果
    • checkMinimum

      protected boolean checkMinimum(CheckResult result, String data, String minimum, int dataType)
      最小値チェック
      NUMBER型のときには 数値用比較、NUMBER以外のときは文字用比較を行います。
      パラメータ:
      result - チェック結果格納オブジェクト
      data - チェック対象文字列
      minimum - 最小値
      dataType - データタイプ
      戻り値:
      boolean 結果
    • checkMaximum

      protected boolean checkMaximum(CheckResult result, String data, String maximum, int dataType)
      最大値チェック
      DataTypeがNUMBERのときには数値比較、それ以外の場合には文字比較を行います。
      パラメータ:
      result - 結果情報格納オブジェクト
      data - チェック対象文字列
      maximum - 最大値
      dataType - データタイプ
      戻り値:
      boolean 結果
    • checkEnum

      protected boolean checkEnum(CheckResult result, String data, String[] dataEnum)
      選択肢(ENUM)チェック
      パラメータ:
      result - 結果情報格納オブジェクト
      data - チェック対象文字列
      dataEnum - 選択肢
      戻り値:
      boolean 結果
    • checkNumber

      protected boolean checkNumber(CheckResult result, String value, boolean isRealTimeCheck)
      数字チェック
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkHalfKana

      protected boolean checkHalfKana(CheckResult result, String value, boolean isRealTimeCheck)
      半角カナチェック
      半角カナ文字(LibraryCommon.checkHalfKana)と、記号(LibraryCommon.checkSignString)のみ可
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkAlphabet

      protected boolean checkAlphabet(CheckResult result, String value, boolean isRealTimeCheck)
      英字チェック
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkAlphabetNumber

      protected boolean checkAlphabetNumber(CheckResult result, String value, boolean isRealTimeCheck)
      半角英数字チェック
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkFullAlphabetNumber

      protected boolean checkFullAlphabetNumber(CheckResult result, String value, boolean isRealTimeCheck)
      全角英数字チェック
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkFullFont

      protected boolean checkFullFont(CheckResult result, String value, boolean isRealTimeCheck)
      全角文字チェック
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkHalfFont

      protected boolean checkHalfFont(CheckResult result, String value, boolean isRealTimeCheck)
      半角文字チェック
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkCode

      protected boolean checkCode(CheckResult result, String value, boolean isRealTimeCheck)
      コードチェック 0x7F 以上のときにはチェックエラーになります。
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkDate

      protected boolean checkDate(CheckResult result, String value, boolean isRealTimeCheck)
      日付チェック
      日付(yyyyMMdd)として正しい値になっているかどうかをチェックします。
      ただし、リアルタイムチェックのときには 数字であるかどうか?のチェックのみ行います。
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkDateTime

      protected boolean checkDateTime(CheckResult result, String value, boolean isRealTimeCheck)
      日付時間チェック
      日付時間(yyyyMMddHHmmss)として正しい値になっているかどうかをチェックします。
      ただし、リアルタイムチェックのときには 数字であるかどうか?のチェックのみ行います。
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkTime

      protected boolean checkTime(CheckResult result, String value, boolean isRealTimeCheck)
      時間チェック
      時間(HHmmss)として正しい値になっているかどうかをチェックします。
      ただし、リアルタイムチェックのときには 数字であるかどうか?のチェックのみ行います。
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • checkPositiveNumber

      protected boolean checkPositiveNumber(CheckResult result, String value, boolean isRealTimeCheck)
      正数チェック
      パラメータ:
      result - チェック結果情報格納
      value - チェック対象文字列
      isRealTimeCheck - リアルタイムチェックかどうか
      戻り値:
      boolean 結果
    • setCheckResult

      protected CheckResult setCheckResult(CheckResult result, boolean isResult, String errorCode, Object[] messageArgs)
      チェック結果オブジェクトに値を設定する
      パラメータ:
      result -
      isResult -
      errorCode -
      messageArgs -
      戻り値:
      CheckResult
    • getBytes

      protected byte[] getBytes(String value, String charSet)
      バイト配列取得
      Configに文字コード指定がある場合には、その文字コードを元にバイト配列を取得する。
      指定がない場合には String#getBytes() によりバイト配列を取得する。
      パラメータ:
      String - 対象文字列
      戻り値:
      byte[] 生成バイト配列
    • setCharSet

      public void setCharSet(String charSet)
      バイト数判定のための文字セットを設定する。
      定義:
      setCharSet インタフェース内 jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
      パラメータ:
      charSet -
    • getCharSet

      public String getCharSet()
      バイト数判定のための文字セットを取得する。
      定義:
      getCharSet インタフェース内 jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
      戻り値:
      文字セット名称
    • setResourceBundle

      public void setResourceBundle(ResourceBundle messageResource)
      エラーメッセージ用ResourceBundleを設定する
      定義:
      setResourceBundle インタフェース内 jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
      パラメータ:
      messageResource -
    • getResourceBundle

      public ResourceBundle getResourceBundle()
      エラーメッセージ用ResourceBundleを取得する
      定義:
      getResourceBundle インタフェース内 jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
      戻り値: