Class EmailValidator
- java.lang.Object
-
- org.openstreetmap.josm.data.validation.routines.AbstractValidator
-
- org.openstreetmap.josm.data.validation.routines.EmailValidator
-
public class EmailValidator extends AbstractValidator
Perform email validations.
Based on a script by Sandeep V. Tamhankar http://javascript.internet.com
This implementation is not guaranteed to catch all possible errors in an email address.
.- Since:
- Validator 1.4
- Version:
- $Revision: 1741724 $
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
allowLocal
private boolean
allowTld
private static Pattern
EMAIL_PATTERN
private static String
EMAIL_REGEX
private static EmailValidator
EMAIL_VALIDATOR
Singleton instance of this class, which doesn't consider local addresses as valid.private static EmailValidator
EMAIL_VALIDATOR_WITH_LOCAL
Singleton instance of this class, which does consider local addresses valid.private static EmailValidator
EMAIL_VALIDATOR_WITH_TLD
Singleton instance of this class, which doesn't consider local addresses as valid.private static Pattern
IP_DOMAIN_PATTERN
private static String
IP_DOMAIN_REGEX
private static int
MAX_USERNAME_LEN
private static String
QUOTED_USER
private static String
SPECIAL_CHARS
private static Pattern
USER_PATTERN
private static String
USER_REGEX
private static String
VALID_CHARS
private static String
WORD
-
Constructor Summary
Constructors Modifier Constructor Description protected
EmailValidator(boolean allowLocal, boolean allowTld)
Protected constructor for subclasses to use.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static EmailValidator
getInstance()
Returns the Singleton instance of this validator.static EmailValidator
getInstance(boolean allowLocal)
Returns the Singleton instance of this validator, with local validation as required.static EmailValidator
getInstance(boolean allowLocal, boolean allowTld)
Returns the Singleton instance of this validator, with local validation as required.String
getValidatorName()
Returns the name of this validatorboolean
isValid(String email)
Checks if a field has a valid e-mail address.protected boolean
isValidDomain(String domain)
Returns true if the domain component of an email address is valid.protected boolean
isValidUser(String user)
Returns true if the user component of an email address is valid.-
Methods inherited from class org.openstreetmap.josm.data.validation.routines.AbstractValidator
getErrorMessage, setErrorMessage
-
-
-
-
Field Detail
-
SPECIAL_CHARS
private static final String SPECIAL_CHARS
- See Also:
- Constant Field Values
-
VALID_CHARS
private static final String VALID_CHARS
- See Also:
- Constant Field Values
-
QUOTED_USER
private static final String QUOTED_USER
- See Also:
- Constant Field Values
-
WORD
private static final String WORD
- See Also:
- Constant Field Values
-
EMAIL_REGEX
private static final String EMAIL_REGEX
- See Also:
- Constant Field Values
-
IP_DOMAIN_REGEX
private static final String IP_DOMAIN_REGEX
- See Also:
- Constant Field Values
-
USER_REGEX
private static final String USER_REGEX
- See Also:
- Constant Field Values
-
EMAIL_PATTERN
private static final Pattern EMAIL_PATTERN
-
IP_DOMAIN_PATTERN
private static final Pattern IP_DOMAIN_PATTERN
-
USER_PATTERN
private static final Pattern USER_PATTERN
-
MAX_USERNAME_LEN
private static final int MAX_USERNAME_LEN
- See Also:
- Constant Field Values
-
allowLocal
private final boolean allowLocal
-
allowTld
private final boolean allowTld
-
EMAIL_VALIDATOR
private static final EmailValidator EMAIL_VALIDATOR
Singleton instance of this class, which doesn't consider local addresses as valid.
-
EMAIL_VALIDATOR_WITH_TLD
private static final EmailValidator EMAIL_VALIDATOR_WITH_TLD
Singleton instance of this class, which doesn't consider local addresses as valid.
-
EMAIL_VALIDATOR_WITH_LOCAL
private static final EmailValidator EMAIL_VALIDATOR_WITH_LOCAL
Singleton instance of this class, which does consider local addresses valid.
-
-
Constructor Detail
-
EmailValidator
protected EmailValidator(boolean allowLocal, boolean allowTld)
Protected constructor for subclasses to use.- Parameters:
allowLocal
- Should local addresses be considered valid?allowTld
- Should TLDs be allowed?
-
-
Method Detail
-
getInstance
public static EmailValidator getInstance()
Returns the Singleton instance of this validator.- Returns:
- singleton instance of this validator.
-
getInstance
public static EmailValidator getInstance(boolean allowLocal, boolean allowTld)
Returns the Singleton instance of this validator, with local validation as required.- Parameters:
allowLocal
- Should local addresses be considered valid?allowTld
- Should TLDs be allowed?- Returns:
- singleton instance of this validator
-
getInstance
public static EmailValidator getInstance(boolean allowLocal)
Returns the Singleton instance of this validator, with local validation as required.- Parameters:
allowLocal
- Should local addresses be considered valid?- Returns:
- singleton instance of this validator
-
isValid
public boolean isValid(String email)
Checks if a field has a valid e-mail address.
- Specified by:
isValid
in classAbstractValidator
- Parameters:
email
- The value validation is being performed on. Anull
value is considered invalid.- Returns:
- true if the email address is valid.
-
getValidatorName
public String getValidatorName()
Description copied from class:AbstractValidator
Returns the name of this validator- Specified by:
getValidatorName
in classAbstractValidator
- Returns:
- the name of this validator
-
isValidDomain
protected boolean isValidDomain(String domain)
Returns true if the domain component of an email address is valid.- Parameters:
domain
- being validated, may be in IDN format- Returns:
- true if the email address's domain is valid.
-
isValidUser
protected boolean isValidUser(String user)
Returns true if the user component of an email address is valid.- Parameters:
user
- being validated- Returns:
- true if the user name is valid.
-
-