Class LuhnCheckValidator
- java.lang.Object
-
- org.hibernate.validator.internal.constraintvalidators.hv.ModCheckBase
-
- org.hibernate.validator.internal.constraintvalidators.hv.LuhnCheckValidator
-
- All Implemented Interfaces:
ConstraintValidator<LuhnCheck,CharSequence>
public class LuhnCheckValidator extends ModCheckBase implements ConstraintValidator<LuhnCheck,CharSequence>
Luhn algorithm checksum validator http://en.wikipedia.org/wiki/Luhn_algorithm http://en.wikipedia.org/wiki/Check_digit- Author:
- George Gastaldi, Hardy Ferentschik, Victor Rezende dos Santos
-
-
Constructor Summary
Constructors Constructor Description LuhnCheckValidator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidinitialize(LuhnCheck constraintAnnotation)Initializes the validator in preparation forConstraintValidator.isValid(Object, ConstraintValidatorContext)calls.booleanisCheckDigitValid(List<Integer> digits, char checkDigit)Validate check digit using Luhn algorithm-
Methods inherited from class org.hibernate.validator.internal.constraintvalidators.hv.ModCheckBase
extractDigit, initialize, isValid
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jakarta.validation.ConstraintValidator
isValid
-
-
-
-
Method Detail
-
initialize
public void initialize(LuhnCheck constraintAnnotation)
Description copied from interface:ConstraintValidatorInitializes the validator in preparation forConstraintValidator.isValid(Object, ConstraintValidatorContext)calls. The constraint annotation for a given constraint declaration is passed.This method is guaranteed to be called before any use of this instance for validation.
The default implementation is a no-op.
- Specified by:
initializein interfaceConstraintValidator<LuhnCheck,CharSequence>- Parameters:
constraintAnnotation- annotation instance for a given constraint declaration
-
isCheckDigitValid
public boolean isCheckDigitValid(List<Integer> digits, char checkDigit)
Validate check digit using Luhn algorithm- Specified by:
isCheckDigitValidin classModCheckBase- Parameters:
digits- The digits over which to calculate the checksumcheckDigit- the check digit- Returns:
trueif the luhn check result matches the check digit,falseotherwise
-
-