java.io.Serializable
public class ISSNValidator
extends java.lang.Object
implements java.io.Serializable
The format is: ISSN dddd-dddC where: d = decimal digit (0-9) C = checksum (0-9 or X) The checksum is formed by adding the first 7 digits multiplied by the position in the entire number (counting from the right). For example, abcd-efg would be 8a + 7b + 6c + 5d + 4e +3f +2g. The check digit is modulus 11, where the value 10 is represented by 'X' For example: ISSN 0317-8471 ISSN 1050-124X This class strips off the 'ISSN ' prefix if it is present before passing the remainder to the checksum routine.
Note: the isValid(String)
and validate(String)
methods strip off any leading
or trailing spaces before doing the validation.
To ensure that only a valid code (without 'ISSN ' prefix) is passed to a method,
use the following code:
Object valid = validator.validate(input); if (valid != null) { some_method(valid.toString()); }
Constructor | Description |
---|---|
ISSNValidator() |
Modifier and Type | Method | Description |
---|---|---|
java.lang.String |
convertToEAN13(java.lang.String issn,
java.lang.String suffix) |
Convert an ISSN code to an EAN-13 code.
|
static ISSNValidator |
getInstance() |
Return a singleton instance of the ISSN validator
|
boolean |
isValid(java.lang.String code) |
Check the code is a valid ISSN code after any transformation
by the validate routine.
|
java.lang.Object |
validate(java.lang.String code) |
Check the code is valid ISSN code.
|
public static ISSNValidator getInstance()
public boolean isValid(java.lang.String code)
code
- The code to validate.true
if a valid ISSN
code, otherwise false
.public java.lang.Object validate(java.lang.String code)
If valid, this method returns the ISSN code with the 'ISSN ' prefix removed (if it was present)
code
- The code to validate.null
.public java.lang.String convertToEAN13(java.lang.String issn, java.lang.String suffix)
This method requires a valid ISSN code.
It may contain a leading 'ISSN ' prefix,
as the input is passed through the validate(String)
method.
issn
- The ISSN code to convertsuffix
- the two digit suffix, e.g. "00"null
if the input ISSN code is not validCopyright © 2002–2018. All rights reserved.