org.apache.commons.validator.routines.checkdigit
Class EAN13CheckDigit

java.lang.Object
  extended by org.apache.commons.validator.routines.checkdigit.ModulusCheckDigit
      extended by org.apache.commons.validator.routines.checkdigit.EAN13CheckDigit
All Implemented Interfaces:
Serializable, CheckDigit

public final class EAN13CheckDigit
extends ModulusCheckDigit
implements Serializable

Modulus 10 EAN-13 / UPC / ISBN-13 Check Digit calculation/validation.

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:

Since:
Validator 1.4
Version:
$Revision: 493905 $ $Date: 2007-01-08 03:11:38 +0100 (Mo, 08. Jan 2007) $
See Also:
Serialized Form

Field Summary
static CheckDigit INSTANCE
          Singleton EAN-13 Check Digit instance
 
Constructor Summary
EAN13CheckDigit()
          Construct a modulus 10 Check Digit routine for EAN/UPC.
 
Method Summary
protected  int weightedValue(int charValue, int leftPos, int rightPos)
          Calculates the weighted value of a character in the code at a specified position.
 
Methods inherited from class org.apache.commons.validator.routines.checkdigit.ModulusCheckDigit
calculate, calculateModulus, getModulus, isValid, sumDigits, toCheckDigit, toInt
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INSTANCE

public static final CheckDigit INSTANCE
Singleton EAN-13 Check Digit instance

Constructor Detail

EAN13CheckDigit

public EAN13CheckDigit()
Construct a modulus 10 Check Digit routine for EAN/UPC.

Method Detail

weightedValue

protected int weightedValue(int charValue,
                            int leftPos,
                            int rightPos)

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.

Specified by:
weightedValue in class ModulusCheckDigit
Parameters:
charValue - The numeric value of the character.
leftPos - The position of the character in the code, counting from left to right
rightPos - The positionof the character in the code, counting from right to left
Returns:
The weighted value of the character.


Copyright © 2002-2010 Apache Software Foundation. All Rights Reserved.