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

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

public final class ABANumberCheckDigit
extends ModulusCheckDigit

Modulus 10 ABA Number (or Routing Transit Number (RTN)) Check Digit calculation/validation.

ABA Numbers (or Routing Transit Numbers) are a nine digit numeric code used to identify American financial institutions for things such as checks or deposits (ABA stands for the American Bankers Association).

Check digit calculation is based on modulus 10 with digits being weighted based on their position (from right to left) as follows:

For further information see Wikipedia - Routing transit number.

Since:
Validator 1.4
Version:
$Revision: 1227719 $ $Date: 2012-01-05 18:45:51 +0100 (Thu, 05 Jan 2012) $
See Also:
Serialized Form

Field Summary
static CheckDigit ABAN_CHECK_DIGIT
          Singleton Routing Transit Number Check Digit instance
 
Constructor Summary
ABANumberCheckDigit()
          Construct a modulus 10 Check Digit routine for ABA Numbers.
 
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

ABAN_CHECK_DIGIT

public static final CheckDigit ABAN_CHECK_DIGIT
Singleton Routing Transit Number Check Digit instance

Constructor Detail

ABANumberCheckDigit

public ABANumberCheckDigit()
Construct a modulus 10 Check Digit routine for ABA Numbers.

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.

ABA Routing numbers are weighted in the following manner:


     left position: 1  2  3  4  5  6  7  8  9
            weight: 3  7  1  3  7  1  3  7  1
 

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-2012 The Apache Software Foundation. All Rights Reserved.