Class LengthValidator

java.lang.Object
nablarch.core.validation.validator.StringValidatorSupport<Length>
nablarch.core.validation.validator.LengthValidator
All Implemented Interfaces:
DirectCallableValidator, Validator

public class LengthValidator extends StringValidatorSupport<Length>
文字列長をチェックするクラス。
文字列長の計算はサロゲートペアを考慮して行われる。
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    指定されたパラメータを属性値とするアノテーションオブジェクトを作成する。
    Class<? extends Annotation>
    対応するアノテーションのクラスを取得する。
    void
    setFixLengthMessageId(String fixLengthMessageId)
    固定桁数の文字列チェック(maxとminに同じ値を設定した場合)でエラーが発生した際のデフォルトのメッセージIDを設定する。
    例 : "{0}は{1}文字で入力してください。"
    void
    setMaxAndMinMessageId(String maxAndMinMessageId)
    最大文字列長を越えるエラーが発生した際に、最小文字列が指定されていた場合のデフォルトのエラーメッセージのメッセージIDを設定する。
    例 : "{0}は{1}文字以上{2}文字以下で入力してください。"
    void
    setMaxMessageId(String maxMessageId)
    最大文字列長を越えるエラーが発生した際に、最小文字列が指定されていなかった場合のデフォルトのエラーメッセージのメッセージIDを設定する。
    例 : "{0}は{2}文字以下で入力してください。"
    <T> boolean
    validateSingleValue(ValidationContext<T> context, String propertyName, Object propertyDisplayName, Length length, String value)
    1つの入力値に対するバリデーションを行う。

    Methods inherited from class nablarch.core.validation.validator.StringValidatorSupport

    validate, validate

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • LengthValidator

      public LengthValidator()
  • Method Details

    • setMaxMessageId

      public void setMaxMessageId(String maxMessageId)
      最大文字列長を越えるエラーが発生した際に、最小文字列が指定されていなかった場合のデフォルトのエラーメッセージのメッセージIDを設定する。
      例 : "{0}は{2}文字以下で入力してください。"
      Parameters:
      maxMessageId - 最大文字列長を越えるエラーメッセージのデフォルトのメッセージID
    • setMaxAndMinMessageId

      public void setMaxAndMinMessageId(String maxAndMinMessageId)
      最大文字列長を越えるエラーが発生した際に、最小文字列が指定されていた場合のデフォルトのエラーメッセージのメッセージIDを設定する。
      例 : "{0}は{1}文字以上{2}文字以下で入力してください。"
      Parameters:
      maxAndMinMessageId - 最大文字列長を越えるエラーが発生した際に、最小文字列が指定されていた場合のメッセージのデフォルトのメッセージID
    • setFixLengthMessageId

      public void setFixLengthMessageId(String fixLengthMessageId)
      固定桁数の文字列チェック(maxとminに同じ値を設定した場合)でエラーが発生した際のデフォルトのメッセージIDを設定する。
      例 : "{0}は{1}文字で入力してください。"
      Parameters:
      fixLengthMessageId - 固定桁数の文字列チェック(maxとminに同じ値を設定した場合)でエラーが発生した際のデフォルトのメッセージID
    • getAnnotationClass

      public Class<? extends Annotation> getAnnotationClass()
      対応するアノテーションのクラスを取得する。
      Returns:
      対応するアノテーションのクラス
    • validateSingleValue

      public <T> boolean validateSingleValue(ValidationContext<T> context, String propertyName, Object propertyDisplayName, Length length, String value)
      1つの入力値に対するバリデーションを行う。
      文字列長チェックのバリデーションを行なう。
      Specified by:
      validateSingleValue in class StringValidatorSupport<Length>
      Type Parameters:
      T - バリデーション結果で取得できる型
      Parameters:
      context - バリデーションコンテキスト
      propertyName - プロパティ名
      propertyDisplayName - プロパティの表示名オブジェクト
      length - アノテーション
      value - バリデーション対象の値
      Returns:
      バリデーションに通った場合true
    • createAnnotation

      public Length createAnnotation(Map<String,Object> params)
      Description copied from class: StringValidatorSupport
      指定されたパラメータを属性値とするアノテーションオブジェクトを作成する。
      Specified by:
      createAnnotation in class StringValidatorSupport<Length>
      Parameters:
      params - アノテーションの属性値を格納したMap
      Returns:
      アノテーション