クラス CodePointByteCheckLibrary

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

public class CodePointByteCheckLibrary extends AbstractCheckLibrary

CodePointByteCheckLibrary

長さのチェックをバイト数でのチェックを行うライブラリです。
チェックの処理内容は 継承元である AbstractCheckLibraryを参照してください。
チェックの内容は、DefaultCheckLibraryと比べ以下の差異があります。

  1. DefaultCheckLibraryにてNUMBERやDATEなどをチェックする際は、最初に半角かどうか のチェックを行いますが、このLibraryでは半角チェックは行いません。
    実際の文字コードを確認することにより、正しい(半角の)値かどうかを確認します。
    そのため、NUMBERなどで半角以外の値が入力された場合のエラーメッセージダイアログが、 DefaultCheckLibraryでは、「半角以外の値が設定されています。」と表示されますが、 このLibraryでは「数字以外の値が入力されています。」と表示されます。
  2. 長さのチェックにてエラーが発生した際、メッセージ作成のための引数に バイト数実値 と 文字コード を追加し、メッセージをより詳細情報表示するように変更されています。
    製品デフォルトのメッセージリソースを使用していた場合には、
    {1}バイト以下の値を入力して下さい。\n[入力]:{0}\n[入力バイト数]:{2}\n[文字コード]:{3}
    と表示されます。
  3. データタイプにPOSITIVE_NUMBER(正数)を指定された場合の長さのチェックにて、 DefaultCheckLibraryでは +500 は 長さ4桁が必要ですが、このLibraryではNUMBER同様 3桁必要になります。
    DefaultCheckLibraryは旧バージョンと同じ動作を行いますが、このLibraryでは NUMBERであること + 正数であること を条件とするよう変更されています。
  4. 今後のバージョンアップでの機能拡張があった場合で、追加処理内容に4Byte文字での考慮が 必要になった場合は、このクラスでは 4Byte文字でも正しく動作するよう考慮しながら修正 されます。

チェックエラーメッセージ

このクラスを使用することにより発生するチェックエラーコードは 継承元であるAbstractCheckLibrary のものに加え、以下になります。

エラー内容エラーコード引数1引数2引数3引数4
固定長時長さのエラーCKE0104チェック対象値DMCで指定された長さ実値の長さ判定文字コード
可変長時長さのエラーCKE0105チェック対象値DMCで指定された長さ実値の長さ判定文字コード

メッセージを変更したい場合には、propertiesファイルを作成し、Configにリソースパスを指定します。
デフォルトのリソースは "jp.ne.mki.wedge.pub.data.check.CheckLibraryMessageVer2" になります。

バイトに変換する文字コード

バイトに変換する文字コードは、デフォルトは OSデフォルト(WindowsではMS932)になります。
Configにて文字コードを変更可能です。
文字制限は行わないため、サロゲートペアが入力されることを考え、文字コードは UTF8/UTF16 などを設定するようにしてください。

導入されたバージョン:
ver1.2.0-12
  • コンストラクタの詳細

    • CodePointByteCheckLibrary

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

    • checkAllDataType

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

      protected int getLength(String data)
      長さを取得
      バイト桁数を返します。
      定義:
      getLength クラス内 AbstractCheckLibrary
      パラメータ:
      data -
      戻り値:
    • checkLength

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

      protected String getViewCharset()
      表示用文字セットの取得
      戻り値: