クラス AbstractCheckLibrary
java.lang.Object
jp.ne.mki.wedge.pub.data.check.AbstractCheckLibrary
- すべての実装されたインタフェース:
jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
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[]
バイト配列取得
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
setResourceBundle
(ResourceBundle messageResource) エラーメッセージ用ResourceBundleを設定する
-
コンストラクタの詳細
-
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) 共通チェック全実行
項目チェックにて実行されるチェック処理になります。
処理されるチェックの順番は、以下になります。- 省略チェック(checkOmit)
- 文字チェック対象対象かどうかの判断(isValidChar)
- 全てのデータタイプについて共通のチェック(checkAllDataType)
- 型チェック(checkType)
- 選択肢チェック(checkEnum)
- 長さチェック(checkLength)
- 最小値チェック(checkMinimum)
- 最大値チェック(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されます。
処理されるチェックの順番は、以下になります。- 文字チェック対象対象かどうかの判断(isValidChar)
- 全てのデータタイプについて共通のチェック(checkAllDataType)
- 型チェック(checkType)
- 長さチェック(checkLength)
- 定義:
isInsertOk
インタフェース内jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
- パラメータ:
text
- チェック対象の値insertStr
- 挿入対象文字列offs
- 挿入オフセットdataType
- データタイプdataLength
- 長さdataScale
- 小数点桁数- 戻り値:
- CheckResult チェック結果
-
createCheckString4InsertCheck
チェック用文字列作成
offsの値はTEXTのDocumentクラスから渡ってくるものになります。 offsの値は コードポイント桁数ではないようです。- パラメータ:
text
-insertStr
-offs
-- 戻り値:
-
checkOmit
省略チェック- パラメータ:
result
-value
-- 戻り値:
-
isValidChar
文字のチェックを行うかどうかを判断します。
バイナリ、オブジェクト 型 もしくは 設定なし の場合は falseが返ります。
値が 0桁のときには false が帰ります。- パラメータ:
value
- 対象文字列int
- データタイプ- 戻り値:
- boolean 結果
-
checkAllDataType
全てのデータタイプに対してチェック。
使用不可能文字のチェックなどを組み込みこみます。- パラメータ:
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
チェックに使用するデータの長さを取得する。
チェック処理により、桁数 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
長さチェック
固定長である場合は固定長チェックを行った後、値の桁数のチェックを行います。- パラメータ:
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
最小値チェック
NUMBER型のときには 数値用比較、NUMBER以外のときは文字用比較を行います。- パラメータ:
result
- チェック結果格納オブジェクトdata
- チェック対象文字列minimum
- 最小値dataType
- データタイプ- 戻り値:
- boolean 結果
-
checkMaximum
最大値チェック
DataTypeがNUMBERのときには数値比較、それ以外の場合には文字比較を行います。- パラメータ:
result
- 結果情報格納オブジェクトdata
- チェック対象文字列maximum
- 最大値dataType
- データタイプ- 戻り値:
- boolean 結果
-
checkEnum
選択肢(ENUM)チェック- パラメータ:
result
- 結果情報格納オブジェクトdata
- チェック対象文字列dataEnum
- 選択肢- 戻り値:
- boolean 結果
-
checkNumber
数字チェック- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkHalfKana
半角カナチェック
半角カナ文字(LibraryCommon.checkHalfKana)と、記号(LibraryCommon.checkSignString)のみ可- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkAlphabet
英字チェック- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkAlphabetNumber
半角英数字チェック- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkFullAlphabetNumber
protected boolean checkFullAlphabetNumber(CheckResult result, String value, boolean isRealTimeCheck) 全角英数字チェック- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkFullFont
全角文字チェック- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkHalfFont
半角文字チェック- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkCode
コードチェック 0x7F 以上のときにはチェックエラーになります。- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkDate
日付チェック
日付(yyyyMMdd)として正しい値になっているかどうかをチェックします。
ただし、リアルタイムチェックのときには 数字であるかどうか?のチェックのみ行います。- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkDateTime
日付時間チェック
日付時間(yyyyMMddHHmmss)として正しい値になっているかどうかをチェックします。
ただし、リアルタイムチェックのときには 数字であるかどうか?のチェックのみ行います。- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkTime
時間チェック
時間(HHmmss)として正しい値になっているかどうかをチェックします。
ただし、リアルタイムチェックのときには 数字であるかどうか?のチェックのみ行います。- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
checkPositiveNumber
正数チェック- パラメータ:
result
- チェック結果情報格納value
- チェック対象文字列isRealTimeCheck
- リアルタイムチェックかどうか- 戻り値:
- boolean 結果
-
setCheckResult
protected CheckResult setCheckResult(CheckResult result, boolean isResult, String errorCode, Object[] messageArgs) チェック結果オブジェクトに値を設定する- パラメータ:
result
-isResult
-errorCode
-messageArgs
-- 戻り値:
- CheckResult
-
getBytes
バイト配列取得
Configに文字コード指定がある場合には、その文字コードを元にバイト配列を取得する。
指定がない場合には String#getBytes() によりバイト配列を取得する。- パラメータ:
String
- 対象文字列- 戻り値:
- byte[] 生成バイト配列
-
setCharSet
バイト数判定のための文字セットを設定する。- 定義:
setCharSet
インタフェース内jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
- パラメータ:
charSet
-
-
getCharSet
バイト数判定のための文字セットを取得する。- 定義:
getCharSet
インタフェース内jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
- 戻り値:
- 文字セット名称
-
setResourceBundle
エラーメッセージ用ResourceBundleを設定する- 定義:
setResourceBundle
インタフェース内jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
- パラメータ:
messageResource
-
-
getResourceBundle
エラーメッセージ用ResourceBundleを取得する- 定義:
getResourceBundle
インタフェース内jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface
- 戻り値:
-