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

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

public final class SedolCheckDigit
extends ModulusCheckDigit

Modulus 10 SEDOL (UK Securities) Check Digit calculation/validation.

SEDOL Numbers are 7 character alphanumeric codes used to identify UK Securities (SEDOL stands for Stock Exchange Daily Official List).

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


      position:  1  2  3  4  5  6  7
     weighting:  1  3  1  7  3  9  1
 

See Wikipedia - SEDOL for more details.

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 SEDOL_CHECK_DIGIT
          Singleton SEDOL check digit instance
 
Constructor Summary
SedolCheckDigit()
          Construct a modulus 11 Check Digit routine for ISBN-10.
 
Method Summary
protected  int calculateModulus(String code, boolean includesCheckDigit)
          Calculate the modulus for an SEDOL code.
protected  int toInt(char character, int leftPos, int rightPos)
          Convert a character at a specified position to an integer value.
protected  int weightedValue(int charValue, int leftPos, int rightPos)
          Calculates the weighted value of a charcter in the code at a specified position.
 
Methods inherited from class org.apache.commons.validator.routines.checkdigit.ModulusCheckDigit
calculate, getModulus, isValid, sumDigits, toCheckDigit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SEDOL_CHECK_DIGIT

public static final CheckDigit SEDOL_CHECK_DIGIT
Singleton SEDOL check digit instance

Constructor Detail

SedolCheckDigit

public SedolCheckDigit()
Construct a modulus 11 Check Digit routine for ISBN-10.

Method Detail

calculateModulus

protected int calculateModulus(String code,
                               boolean includesCheckDigit)
                        throws CheckDigitException
Calculate the modulus for an SEDOL code.

Overrides:
calculateModulus in class ModulusCheckDigit
Parameters:
code - The code to calculate the modulus for.
includesCheckDigit - Whether the code includes the Check Digit or not.
Returns:
The modulus value
Throws:
CheckDigitException - if an error occurs calculating the modulus for the specified code

weightedValue

protected int weightedValue(int charValue,
                            int leftPos,
                            int rightPos)
Calculates the weighted value of a charcter in the code at a specified position.

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.

toInt

protected int toInt(char character,
                    int leftPos,
                    int rightPos)
             throws CheckDigitException
Convert a character at a specified position to an integer value.

Overrides:
toInt in class ModulusCheckDigit
Parameters:
character - The character to convert
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 integer value of the character
Throws:
CheckDigitException - if character is not alphanumeric


Copyright © 2002-2012 The Apache Software Foundation. All Rights Reserved.