Class SedolCheckDigit
- java.lang.Object
-
- org.apache.commons.validator.routines.checkdigit.ModulusCheckDigit
-
- org.apache.commons.validator.routines.checkdigit.SedolCheckDigit
-
- All Implemented Interfaces:
java.io.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 1See Wikipedia - SEDOL for more details.
- Since:
- Validator 1.4
- Version:
- $Revision: 1649191 $
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static int[]POSITION_WEIGHTweighting given to digits depending on their right positionstatic CheckDigitSEDOL_CHECK_DIGITSingleton SEDOL check digit instanceprivate static longserialVersionUID
-
Constructor Summary
Constructors Constructor Description SedolCheckDigit()Construct a modulus 11 Check Digit routine for ISBN-10.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected intcalculateModulus(java.lang.String code, boolean includesCheckDigit)Calculate the modulus for an SEDOL code.protected inttoInt(char character, int leftPos, int rightPos)Convert a character at a specified position to an integer value.protected intweightedValue(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
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
SEDOL_CHECK_DIGIT
public static final CheckDigit SEDOL_CHECK_DIGIT
Singleton SEDOL check digit instance
-
POSITION_WEIGHT
private static final int[] POSITION_WEIGHT
weighting given to digits depending on their right position
-
-
Method Detail
-
calculateModulus
protected int calculateModulus(java.lang.String code, boolean includesCheckDigit) throws CheckDigitExceptionCalculate the modulus for an SEDOL code.- Overrides:
calculateModulusin classModulusCheckDigit- 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:
weightedValuein classModulusCheckDigit- Parameters:
charValue- The numeric value of the character.leftPos- The position of the character in the code, counting from left to rightrightPos- 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 CheckDigitExceptionConvert a character at a specified position to an integer value.- Overrides:
toIntin classModulusCheckDigit- Parameters:
character- The character to convertleftPos- The position of the character in the code, counting from left to rightrightPos- 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
-
-