public final class EAN13Validator extends ModulusValidator<EAN13>
Check digit calculation is based on modulus 10 with digits in an odd position (from right to left) being weighted 1 and even position digits being weighted 3.
For further information see:
Constructor and Description |
---|
EAN13Validator() |
Modifier and Type | Method and Description |
---|---|
protected int |
weightedValue(int charValue,
int leftPos,
int rightPos)
Calculates the weighted value of a character in the
code at a specified position.
|
initialize, isValid, sumDigits, toInt
protected int weightedValue(int charValue, int leftPos, int rightPos) throws Exception
Calculates the weighted value of a character in the code at a specified position.
For EAN-13 (from right to left) odd digits are weighted with a factor of one and even digits with a factor of three.
Calculates the weighted value of a character in the code at a specified position.Some modulus routines weight the value of a character depending on its position in the code (e.g. ISBN-10), while others use different weighting factors for odd/even positions (e.g. EAN or Luhn). Implement the appropriate mechanism required by overriding this method.
weightedValue
in class ModulusValidator<EAN13>
charValue
- The numeric value of the characterleftPos
- The position of the character in the code, counting from left to rightrightPos
- The position of the character in the code, counting from right to leftException
Copyright © 2010–2020 The Apache Software Foundation. All rights reserved.