|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.ofbiz.base.util.UtilValidate
public class UtilValidate
General input/data validation methods
Utility methods for validating data, especially input.
See detailed description below.
SUMMARY
This is a set of meethods for validating input. Functions are provided to validate:
- U.S. and international phone/fax numbers
- U.S. ZIP codes(5 or 9 digit postal codes)
- U.S. Postal Codes(2 letter abbreviations for names of states)
- U.S. Social Security Numbers(abbreviated as SSNs)
- email addresses
- dates(entry of year, month, and day and validity of combined date)
- credit card numbers
Supporting utility functions validate that:
- characters are Letter, Digit, or LetterOrDigit
- strings are a Signed, Positive, Negative, Nonpositive, or Nonnegative integer
- strings are a Float or a SignedFloat
- strings are Alphabetic, Alphanumeric, or Whitespace
- strings contain an integer within a specified range
Other utility functions are provided to:
- remove from a string characters which are/are not in a "bag" of selected characters
- strip whitespace/leading whitespace from a string
==============================================================================
NOTE: This code was adapted from the Netscape JavaScript form validation code,
usually found in "FormChek.js". Credit card verification functions Originally
==============================================================================
Field Summary | |
---|---|
static java.lang.String |
ContiguousUSStateCodes
Valid contiguous U.S. |
static java.lang.String |
creditCardDelimiters
non-digit characters which are allowed in credit card numbers |
static int[] |
daysInMonth
An array of ints representing the number of days in each month of the year. |
static java.lang.String |
decimalPointDelimiter
decimal point character differs by language and culture |
static boolean |
defaultEmptyOK
boolean specifying by default whether or not it is okay for a String to be empty |
static java.lang.String |
digits
digit characters |
static int |
digitsInSocialSecurityNumber
U.S. |
static int |
digitsInUSPhoneAreaCode
|
static int |
digitsInUSPhoneMainNumber
|
static int |
digitsInUSPhoneNumber
U.S. |
static int |
digitsInZipCode1
U.S. |
static int |
digitsInZipCode2
U.S. |
static java.lang.String |
hexDigits
hex digit characters |
static java.lang.String |
isAnyCardMsg
|
static java.lang.String |
isContiguousStateCodeMsg
|
static java.lang.String |
isContiguousZipCodeMsg
|
static java.lang.String |
isCreditCardPrefixMsg
|
static java.lang.String |
isCreditCardSuffixMsg
|
static java.lang.String |
isDateAfterToday
|
static java.lang.String |
isDateMsg
|
static java.lang.String |
isDatePrefixMsg
|
static java.lang.String |
isDateSuffixMsg
|
static java.lang.String |
isDayMsg
|
static java.lang.String |
isEmailMsg
|
static java.lang.String |
isFloatMsg
|
static java.lang.String |
isHourMsg
|
static java.lang.String |
isIntegerMsg
|
static java.lang.String |
isInternationalPhoneNumberMsg
|
static java.lang.String |
isLongMsg
|
static java.lang.String |
isMinuteMsg
|
static java.lang.String |
isMonthMsg
|
static java.lang.String |
isNotEmptyMsg
|
static java.lang.String |
isSecondMsg
|
static java.lang.String |
isSignedDoubleMsg
|
static java.lang.String |
isSignedFloatMsg
|
static java.lang.String |
isSignedIntegerMsg
|
static java.lang.String |
isSignedLongMsg
|
static java.lang.String |
isSSNMsg
|
static java.lang.String |
isStateCodeMsg
|
static java.lang.String |
isTimeMsg
|
static java.lang.String |
isUSPhoneAreaCodeMsg
|
static java.lang.String |
isUSPhoneMainNumberMsg
|
static java.lang.String |
isUSPhoneMsg
|
static java.lang.String |
isYearMsg
|
static java.lang.String |
isZipCodeMsg
|
static java.lang.String |
letters
letter characters |
static java.lang.String |
lowercaseLetters
lower-case letter characters |
static java.lang.String |
module
|
static java.lang.String |
phoneNumberDelimiters
non-digit characters which are allowed in phone numbers |
static java.lang.String |
SSNDelimiters
non-digit characters which are allowed in Social Security Numbers |
static java.lang.String |
uppercaseLetters
upper-case letter characters |
static java.lang.String |
USStateCodeDelimiter
Delimiter for USStateCodes String |
static java.lang.String |
USStateCodes
Valid U.S. |
static java.lang.String |
validSSNChars
characters which are allowed in Social Security Numbers |
static java.lang.String |
validUSPhoneChars
characters which are allowed in US phone numbers |
static java.lang.String |
validWorldPhoneChars
characters which are allowed in international phone numbers(a leading + is OK) |
static java.lang.String |
validZipCodeChars
characters which are allowed in Social Security Numbers |
static java.lang.String |
whitespace
whitespace characters |
static java.lang.String |
ZipCodeDelimeter
our preferred delimiter for reformatting ZIP Codes |
static java.lang.String |
ZipCodeDelimiters
non-digit characters which are allowed in ZIP Codes |
Constructor Summary | |
---|---|
UtilValidate()
|
Method Summary | |
---|---|
static java.lang.String |
appendCheckDigit(java.lang.String stPassed)
|
static boolean |
areEqual(java.lang.Object obj,
java.lang.Object obj2)
|
static char |
calcUpcChecksum(java.lang.String upc)
|
static boolean |
charInString(char c,
java.lang.String s)
Returns true if single character c(actually a string) is contained within string s. |
static java.lang.String |
checkValidDatabaseId(java.lang.String fieldStr)
|
static int |
daysInFebruary(int year)
Given integer argument year, returns number of days in February of that year. |
static java.lang.String |
getCardType(java.lang.String ccPassed)
Checks to see if the cc number is a valid number for any accepted credit card, and return the name of that type |
static int |
getLuhnCheckDigit(java.lang.String stPassed)
|
static int |
getLuhnSum(java.lang.String stPassed)
|
static boolean |
isAlphabetic(java.lang.String s)
Returns true if string s is letters only. |
static boolean |
isAlphanumeric(java.lang.String s)
Returns true if string s is English letters (A .. |
static boolean |
isAmericanExpress(java.lang.String cc)
Checks to see if the cc number is a valid American Express number |
static boolean |
isAnyCard(java.lang.String ccPassed)
Checks to see if the cc number is a valid number for any accepted credit card |
static boolean |
isCardMatch(java.lang.String cardType,
java.lang.String cardNumberPassed)
Checks to see if the cc number is a valid number for the specified type |
static boolean |
isCarteBlanche(java.lang.String cc)
Checks to see if the cc number is a valid Carte Blanche number |
static boolean |
isContiguousStateCode(java.lang.String s)
Return true if s is a valid contiguous U.S. |
static boolean |
isContiguousZipCode(java.lang.String s)
Returns true if string s is a valid contiguous U.S. |
static boolean |
isCreditCard(java.lang.String stPassed)
Checks credit card number with Luhn Mod-10 test |
static boolean |
isDate(java.lang.String date)
isDate returns true if string argument date forms a valid date. |
static boolean |
isDate(java.lang.String year,
java.lang.String month,
java.lang.String day)
isDate returns true if string arguments year, month, and day form a valid date. |
static boolean |
isDateAfterToday(java.lang.String date)
isDate returns true if string argument date forms a valid date and is after today. |
static boolean |
isDateBeforeToday(java.lang.String date)
isDate returns true if string argument date forms a valid date and is before today. |
static boolean |
isDateTime(java.lang.String value,
java.lang.String pattern,
java.util.Locale locale)
Verify if date/time string match pattern and is valid. |
static boolean |
isDateTime(java.lang.String value,
java.lang.String pattern,
java.util.Locale locale,
java.util.TimeZone timeZone)
Verify if date/time string match pattern and is valid. |
static boolean |
isDay(java.lang.String s)
isDay returns true if string s is a valid day number between 1 and 31. |
static boolean |
isDigit(char c)
Returns true if character c is a digit (0 .. |
static boolean |
isDinersClub(java.lang.String cc)
Checks to see if the cc number is a valid Diners Club number |
static boolean |
isDiscover(java.lang.String cc)
Checks to see if the cc number is a valid Discover number |
static boolean |
isDouble(java.lang.String s,
boolean allowNegative,
boolean allowPositive,
int minDecimal,
int maxDecimal)
General routine for testing whether a string is a double. |
static boolean |
isEmail(java.lang.String s)
|
static boolean |
isEmpty(java.util.Collection c)
Check whether collection c is empty. |
static boolean |
isEmpty(java.lang.Object o)
Check whether an object is empty, will see if it is a String, Map, Collection, etc. |
static boolean |
isEmpty(java.lang.String s)
Check whether string s is empty. |
static boolean |
isEnRoute(java.lang.String cc)
Checks to see if the cc number is a valid EnRoute number |
static boolean |
isFloat(java.lang.String s)
True if string s is an unsigned floating point(real) number. |
static boolean |
isFloat(java.lang.String s,
boolean allowNegative,
boolean allowPositive,
int minDecimal,
int maxDecimal)
General routine for testing whether a string is a float. |
static boolean |
isGiftCard(java.lang.String stPassed)
Check to see if a card number is a supported Gift Card |
static boolean |
isHexDigit(char c)
Returns true if character c is a letter or digit. |
static boolean |
isHour(java.lang.String s)
isHour returns true if string s is a valid number between 0 and 23. |
static boolean |
isInteger(java.lang.String s)
Returns true if all characters in string s are numbers. |
static boolean |
isIntegerInRange(java.lang.String s,
int a,
int b)
isIntegerInRange returns true if string s is an integer within the range of integer arguments a and b, inclusive. |
static boolean |
isInternationalPhoneNumber(java.lang.String s)
isInternationalPhoneNumber returns true if string s is a valid international phone number. |
static boolean |
isJCB(java.lang.String cc)
Checks to see if the cc number is a valid JCB number |
static boolean |
isLetter(char c)
Returns true if character c is an English letter (A .. |
static boolean |
isLetterOrDigit(char c)
Returns true if character c is a letter or digit. |
static boolean |
isMasterCard(java.lang.String cc)
Checks to see if the cc number is a valid Master Card number |
static boolean |
isMinute(java.lang.String s)
isMinute returns true if string s is a valid number between 0 and 59. |
static boolean |
isMonth(java.lang.String s)
isMonth returns true if string s is a valid month number between 1 and 12. |
static boolean |
isNegativeInteger(java.lang.String s)
Returns true if string s is an integer < 0. |
static boolean |
isNonnegativeInteger(java.lang.String s)
Returns true if string s is an integer >= 0. |
static boolean |
isNonpositiveInteger(java.lang.String s)
Returns true if string s is an integer <= 0. |
static boolean |
isNotEmpty(java.util.Collection c)
Check whether collection c is NOT empty. |
static boolean |
isNotEmpty(java.lang.Object o)
Check whether an object is NOT empty, will see if it is a String, Map, Collection, etc. |
static boolean |
isNotEmpty(java.lang.String s)
Check whether string s is NOT empty. |
static boolean |
isNotPoBox(java.lang.String s)
isNotPoBox returns true if address argument does not contain anything that looks like a a PO Box. |
static boolean |
isOFBGiftCard(java.lang.String stPassed)
Check to see if a card number is a valid OFB Gift Card (Certifiicate) |
static boolean |
isPositiveInteger(java.lang.String s)
Returns true if string s is an integer > 0. |
static boolean |
isSecond(java.lang.String s)
isSecond returns true if string s is a valid number between 0 and 59. |
static boolean |
isSignedDouble(java.lang.String s)
True if string s is a signed or unsigned floating point (real) number. |
static boolean |
isSignedFloat(java.lang.String s)
True if string s is a signed or unsigned floating point (real) number. |
static boolean |
isSignedInteger(java.lang.String s)
Returns true if all characters are numbers; first character is allowed to be + or - as well. |
static boolean |
isSignedLong(java.lang.String s)
Returns true if all characters are numbers; first character is allowed to be + or - as well. |
static boolean |
isSolo(java.lang.String cc)
Checks to see if the cc number is a valid Solo number |
static boolean |
isSSN(java.lang.String s)
isSSN returns true if string s is a valid U.S. |
static boolean |
isStateCode(java.lang.String s)
Return true if s is a valid U.S. |
static boolean |
isString(java.lang.Object obj)
|
static boolean |
isswitch(java.lang.String cc)
Checks to see if the cc number is a valid Switch number |
static boolean |
isTime(java.lang.String time)
isTime returns true if string argument time forms a valid time. |
static boolean |
isTime(java.lang.String hour,
java.lang.String minute,
java.lang.String second)
isTime returns true if string arguments hour, minute, and second form a valid time. |
static boolean |
isTimestamp(java.lang.String value)
Verify either date/time string conforms timestamp pattern. |
static boolean |
isUrl(java.lang.String s)
isUrl returns true if the string contains :// |
static boolean |
isUSPhoneAreaCode(java.lang.String s)
isUSPhoneAreaCode returns true if string s is a valid U.S. |
static boolean |
isUSPhoneMainNumber(java.lang.String s)
isUSPhoneMainNumber returns true if string s is a valid U.S. |
static boolean |
isUSPhoneNumber(java.lang.String s)
isUSPhoneNumber returns true if string s is a valid U.S. |
static boolean |
isValidDatabaseId(java.lang.String fieldStr,
java.lang.StringBuffer errorDetails)
|
static boolean |
isValidDatabaseId(java.lang.String fieldStr,
java.lang.StringBuilder errorDetails)
|
static boolean |
isValidUpc(java.lang.String upc)
|
static boolean |
isValueLinkCard(java.lang.String stPassed)
Check to see if a card number is a valid ValueLink Gift Card |
static boolean |
isVisa(java.lang.String cc)
Checks to see if the cc number is a valid Visa number |
static boolean |
isVisaElectron(java.lang.String cc)
Checks to see if the cc number is a valid Visa Electron number |
static boolean |
isWhitespace(java.lang.String s)
Returns true if string s is empty or whitespace characters only. |
static boolean |
isYear(java.lang.String s)
isYear returns true if string s is a valid Year number. |
static boolean |
isZipCode(java.lang.String s)
isZIPCode returns true if string s is a valid U.S. |
static java.lang.String |
stripCharsInBag(java.lang.String s,
java.lang.String bag)
Removes all characters which appear in string bag from string s. |
static java.lang.String |
stripCharsNotInBag(java.lang.String s,
java.lang.String bag)
Removes all characters which do NOT appear in string bag from string s. |
static java.lang.String |
stripInitialWhitespace(java.lang.String s)
Removes initial(leading) whitespace characters from s. |
static java.lang.String |
stripWhitespace(java.lang.String s)
Removes all whitespace characters from s. |
static boolean |
sumIsMod10(int sum)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String module
public static final boolean defaultEmptyOK
public static final java.lang.String digits
public static final java.lang.String hexDigits
public static final java.lang.String lowercaseLetters
public static final java.lang.String uppercaseLetters
public static final java.lang.String letters
public static final java.lang.String whitespace
public static final java.lang.String decimalPointDelimiter
public static final java.lang.String phoneNumberDelimiters
public static final java.lang.String validUSPhoneChars
public static final java.lang.String validWorldPhoneChars
public static final java.lang.String SSNDelimiters
public static final java.lang.String validSSNChars
public static final int digitsInSocialSecurityNumber
public static final int digitsInUSPhoneNumber
public static final int digitsInUSPhoneAreaCode
public static final int digitsInUSPhoneMainNumber
public static final java.lang.String ZipCodeDelimiters
public static final java.lang.String ZipCodeDelimeter
public static final java.lang.String validZipCodeChars
public static final int digitsInZipCode1
public static final int digitsInZipCode2
public static final java.lang.String creditCardDelimiters
public static final java.lang.String isNotEmptyMsg
public static final java.lang.String isStateCodeMsg
public static final java.lang.String isContiguousStateCodeMsg
public static final java.lang.String isZipCodeMsg
public static final java.lang.String isUSPhoneMsg
public static final java.lang.String isUSPhoneAreaCodeMsg
public static final java.lang.String isUSPhoneMainNumberMsg
public static final java.lang.String isContiguousZipCodeMsg
public static final java.lang.String isInternationalPhoneNumberMsg
public static final java.lang.String isSSNMsg
public static final java.lang.String isEmailMsg
public static final java.lang.String isAnyCardMsg
public static final java.lang.String isCreditCardPrefixMsg
public static final java.lang.String isCreditCardSuffixMsg
public static final java.lang.String isDayMsg
public static final java.lang.String isMonthMsg
public static final java.lang.String isYearMsg
public static final java.lang.String isDatePrefixMsg
public static final java.lang.String isDateSuffixMsg
public static final java.lang.String isHourMsg
public static final java.lang.String isMinuteMsg
public static final java.lang.String isSecondMsg
public static final java.lang.String isTimeMsg
public static final java.lang.String isDateMsg
public static final java.lang.String isDateAfterToday
public static final java.lang.String isIntegerMsg
public static final java.lang.String isSignedIntegerMsg
public static final java.lang.String isLongMsg
public static final java.lang.String isSignedLongMsg
public static final java.lang.String isFloatMsg
public static final java.lang.String isSignedFloatMsg
public static final java.lang.String isSignedDoubleMsg
public static final int[] daysInMonth
public static final java.lang.String USStateCodeDelimiter
public static final java.lang.String USStateCodes
public static final java.lang.String ContiguousUSStateCodes
Constructor Detail |
---|
public UtilValidate()
Method Detail |
---|
public static boolean areEqual(java.lang.Object obj, java.lang.Object obj2)
public static boolean isEmpty(java.lang.Object o)
public static boolean isNotEmpty(java.lang.Object o)
public static boolean isEmpty(java.lang.String s)
public static boolean isEmpty(java.util.Collection c)
public static boolean isNotEmpty(java.lang.String s)
public static boolean isNotEmpty(java.util.Collection c)
public static boolean isString(java.lang.Object obj)
public static boolean isWhitespace(java.lang.String s)
public static java.lang.String stripCharsInBag(java.lang.String s, java.lang.String bag)
public static java.lang.String stripCharsNotInBag(java.lang.String s, java.lang.String bag)
public static java.lang.String stripWhitespace(java.lang.String s)
public static boolean charInString(char c, java.lang.String s)
public static java.lang.String stripInitialWhitespace(java.lang.String s)
public static boolean isLetter(char c)
public static boolean isDigit(char c)
public static boolean isLetterOrDigit(char c)
public static boolean isHexDigit(char c)
public static boolean isInteger(java.lang.String s)
public static boolean isSignedInteger(java.lang.String s)
public static boolean isSignedLong(java.lang.String s)
public static boolean isPositiveInteger(java.lang.String s)
public static boolean isNonnegativeInteger(java.lang.String s)
public static boolean isNegativeInteger(java.lang.String s)
public static boolean isNonpositiveInteger(java.lang.String s)
public static boolean isFloat(java.lang.String s)
public static boolean isFloat(java.lang.String s, boolean allowNegative, boolean allowPositive, int minDecimal, int maxDecimal)
public static boolean isDouble(java.lang.String s, boolean allowNegative, boolean allowPositive, int minDecimal, int maxDecimal)
public static boolean isSignedFloat(java.lang.String s)
public static boolean isSignedDouble(java.lang.String s)
public static boolean isAlphabetic(java.lang.String s)
public static boolean isAlphanumeric(java.lang.String s)
public static boolean isSSN(java.lang.String s)
public static boolean isUSPhoneNumber(java.lang.String s)
public static boolean isUSPhoneAreaCode(java.lang.String s)
public static boolean isUSPhoneMainNumber(java.lang.String s)
public static boolean isInternationalPhoneNumber(java.lang.String s)
public static boolean isZipCode(java.lang.String s)
public static boolean isContiguousZipCode(java.lang.String s)
public static boolean isStateCode(java.lang.String s)
public static boolean isContiguousStateCode(java.lang.String s)
public static boolean isEmail(java.lang.String s)
public static boolean isUrl(java.lang.String s)
s
- String to validate
public static boolean isYear(java.lang.String s)
public static boolean isIntegerInRange(java.lang.String s, int a, int b)
public static boolean isMonth(java.lang.String s)
public static boolean isDay(java.lang.String s)
public static int daysInFebruary(int year)
public static boolean isHour(java.lang.String s)
public static boolean isMinute(java.lang.String s)
public static boolean isSecond(java.lang.String s)
public static boolean isDate(java.lang.String year, java.lang.String month, java.lang.String day)
public static boolean isDate(java.lang.String date)
public static boolean isDateAfterToday(java.lang.String date)
public static boolean isDateBeforeToday(java.lang.String date)
public static boolean isTime(java.lang.String hour, java.lang.String minute, java.lang.String second)
public static boolean isTime(java.lang.String time)
public static boolean isValueLinkCard(java.lang.String stPassed)
stPassed
- a string representing a valuelink gift card
public static boolean isOFBGiftCard(java.lang.String stPassed)
stPassed
- a string representing a gift card
public static boolean isGiftCard(java.lang.String stPassed)
stPassed
- a string representing a gift card
public static int getLuhnSum(java.lang.String stPassed)
public static int getLuhnCheckDigit(java.lang.String stPassed)
public static boolean sumIsMod10(int sum)
public static java.lang.String appendCheckDigit(java.lang.String stPassed)
public static boolean isCreditCard(java.lang.String stPassed)
stPassed
- a string representing a credit card number
public static boolean isVisa(java.lang.String cc)
cc
- a string representing a credit card number; Sample number: 4111 1111 1111 1111(16 digits)
public static boolean isMasterCard(java.lang.String cc)
cc
- a string representing a credit card number; Sample number: 5500 0000 0000 0004(16 digits)
public static boolean isAmericanExpress(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 340000000000009(15 digits)
public static boolean isDinersClub(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 30000000000004(14 digits)
public static boolean isCarteBlanche(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 30000000000004(14 digits)
public static boolean isDiscover(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 6011000000000004(16 digits)
public static boolean isEnRoute(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 201400000000009(15 digits)
public static boolean isJCB(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 3088000000000009(16 digits)
public static boolean isswitch(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 6331100000000096(16 digits)
public static boolean isSolo(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 6331100000000096 (16 digits)
public static boolean isVisaElectron(java.lang.String cc)
cc
- - a string representing a credit card number; Sample number: 4175000000000001(16 digits)
public static boolean isAnyCard(java.lang.String ccPassed)
ccPassed
- - a string representing a credit card number
public static java.lang.String getCardType(java.lang.String ccPassed)
ccPassed
- - a string representing a credit card number
public static boolean isCardMatch(java.lang.String cardType, java.lang.String cardNumberPassed)
cardType
- - a string representing the credit card typecardNumberPassed
- - a string representing a credit card number
public static boolean isNotPoBox(java.lang.String s)
public static boolean isValidUpc(java.lang.String upc)
public static char calcUpcChecksum(java.lang.String upc)
public static java.lang.String checkValidDatabaseId(java.lang.String fieldStr)
public static boolean isValidDatabaseId(java.lang.String fieldStr, java.lang.StringBuffer errorDetails)
public static boolean isValidDatabaseId(java.lang.String fieldStr, java.lang.StringBuilder errorDetails)
public static boolean isDateTime(java.lang.String value, java.lang.String pattern, java.util.Locale locale, java.util.TimeZone timeZone)
value
- a String
valuepattern
- a String
valuelocale
- a Locale
valuetimeZone
- a TimeZone
value
boolean
valuepublic static boolean isDateTime(java.lang.String value, java.lang.String pattern, java.util.Locale locale)
value
- a String
valuepattern
- a String
valuelocale
- a Locale
value
boolean
valuepublic static boolean isTimestamp(java.lang.String value)
value
- a String
value
boolean
value
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |