Class ISBNValidator
- java.lang.Object
-
- org.apache.commons.validator.routines.ISBNValidator
-
- All Implemented Interfaces:
java.io.Serializable
public class ISBNValidator extends java.lang.Object implements java.io.Serializable
ISBN-10 and ISBN-13 Code Validation.This validator validates the code is either a valid ISBN-10 (using a
CodeValidatorwith theISBN10CheckDigit) or a valid ISBN-13 code (using aCodeValidatorwith theEAN13CheckDigitroutine).The
validate()methods return the ISBN code with formatting characters removed if valid ornullif invalid.This validator also provides the facility to convert ISBN-10 codes to ISBN-13 if the
convertproperty istrue.From 1st January 2007 the book industry will start to use a new 13 digit ISBN number (rather than this 10 digit ISBN number). ISBN-13 codes are EAN codes, for more information see:
- Wikipedia - International Standard Book Number (ISBN).
- EAN - see Wikipedia - European Article Number.
- ISBN-13 Transition details.
ISBN-13s are either prefixed with 978 or 979. 978 prefixes are only assigned to the ISBN agency. 979 prefixes may be assigned to ISBNs or ISMNs (International Standard Music Numbers).
- 979-0 are assigned to the ISMN agency
- 979-10, 979-11, 979-12 are assigned to the ISBN agency
- Since:
- 1.4
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ISBNValidator()Constructs an ISBN validator which converts ISBN-10 codes to ISBN-13.ISBNValidator(boolean convert)Constructs an ISBN validator indicating whether ISBN-10 codes should be converted to ISBN-13.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringconvertToISBN13(java.lang.String isbn10)Convert an ISBN-10 code to an ISBN-13 code.static ISBNValidatorgetInstance()Gets the singleton instance of the ISBN validator which converts ISBN-10 codes to ISBN-13.static ISBNValidatorgetInstance(boolean convert)Gets the singleton instance of the ISBN validator specifying whether ISBN-10 codes should be converted to ISBN-13.booleanisValid(java.lang.String code)Check the code is either a valid ISBN-10 or ISBN-13 code.booleanisValidISBN10(java.lang.String code)Check the code is a valid ISBN-10 code.booleanisValidISBN13(java.lang.String code)Check the code is a valid ISBN-13 code.java.lang.Stringvalidate(java.lang.String code)Check the code is either a valid ISBN-10 or ISBN-13 code.java.lang.StringvalidateISBN10(java.lang.String code)Check the code is a valid ISBN-10 code.java.lang.StringvalidateISBN13(java.lang.String code)Check the code is a valid ISBN-13 code.
-
-
-
Constructor Detail
-
ISBNValidator
public ISBNValidator()
Constructs an ISBN validator which converts ISBN-10 codes to ISBN-13.
-
ISBNValidator
public ISBNValidator(boolean convert)
Constructs an ISBN validator indicating whether ISBN-10 codes should be converted to ISBN-13.- Parameters:
convert-trueif valid ISBN-10 codes should be converted to ISBN-13 codes orfalseif valid ISBN-10 codes should be returned unchanged.
-
-
Method Detail
-
getInstance
public static ISBNValidator getInstance()
Gets the singleton instance of the ISBN validator which converts ISBN-10 codes to ISBN-13.- Returns:
- A singleton instance of the ISBN validator.
-
getInstance
public static ISBNValidator getInstance(boolean convert)
Gets the singleton instance of the ISBN validator specifying whether ISBN-10 codes should be converted to ISBN-13.- Parameters:
convert-trueif valid ISBN-10 codes should be converted to ISBN-13 codes orfalseif valid ISBN-10 codes should be returned unchanged.- Returns:
- A singleton instance of the ISBN validator.
-
convertToISBN13
public java.lang.String convertToISBN13(java.lang.String isbn10)
Convert an ISBN-10 code to an ISBN-13 code.This method requires a valid ISBN-10 with NO formatting characters.
- Parameters:
isbn10- The ISBN-10 code to convert- Returns:
- A converted ISBN-13 code or
nullif the ISBN-10 code is not valid
-
isValid
public boolean isValid(java.lang.String code)
Check the code is either a valid ISBN-10 or ISBN-13 code.- Parameters:
code- The code to validate.- Returns:
trueif a valid ISBN-10 or ISBN-13 code, otherwisefalse.
-
isValidISBN10
public boolean isValidISBN10(java.lang.String code)
Check the code is a valid ISBN-10 code.- Parameters:
code- The code to validate.- Returns:
trueif a valid ISBN-10 code, otherwisefalse.
-
isValidISBN13
public boolean isValidISBN13(java.lang.String code)
Check the code is a valid ISBN-13 code.- Parameters:
code- The code to validate.- Returns:
trueif a valid ISBN-13 code, otherwisefalse.
-
validate
public java.lang.String validate(java.lang.String code)
Check the code is either a valid ISBN-10 or ISBN-13 code.If valid, this method returns the ISBN code with formatting characters removed (such as space or hyphen).
Converts an ISBN-10 codes to ISBN-13 if
convertToISBN13istrue.- Parameters:
code- The code to validate.- Returns:
- A valid ISBN code if valid, otherwise
null.
-
validateISBN10
public java.lang.String validateISBN10(java.lang.String code)
Check the code is a valid ISBN-10 code.If valid, this method returns the ISBN-10 code with formatting characters removed (such as space or hyphen).
- Parameters:
code- The code to validate.- Returns:
- A valid ISBN-10 code if valid,
otherwise
null.
-
validateISBN13
public java.lang.String validateISBN13(java.lang.String code)
Check the code is a valid ISBN-13 code.If valid, this method returns the ISBN-13 code with formatting characters removed (such as space or hyphen).
- Parameters:
code- The code to validate.- Returns:
- A valid ISBN-13 code if valid,
otherwise
null.
-
-