Groovy Documentation

org.codehaus.groovy.grails.validation.routines
[Java] Class DomainValidator

java.lang.Object
  org.codehaus.groovy.grails.validation.routines.DomainValidator
All Implemented Interfaces:
java.io.Serializable

public class DomainValidator
extends java.lang.Object

Domain name validation routines.

This validator provides methods for validating Internet domain names and top-level domains.

Domain names are evaluated according to the standards RFC1034, section 3, and RFC1123, section 2.1. No accomodation is provided for the specialized needs of other applications; if the domain name has been URL-encoded, for example, validation will fail even though the equivalent plaintext version of the same name would have passed.

Validation is also provided for top-level domains (TLDs) as defined and maintained by the Internet Assigned Numbers Authority (IANA):

(NOTE: This class does not provide IP address lookup for domain names or methods to ensure that a given domain name matches a specific IP; see java.net.InetAddress for that functionality.)

Since:
Validator 1.4


Method Summary
static DomainValidator getInstance()

Returns the singleton instance of this validator.

boolean isValid(java.lang.String domain)

Returns true if the specified String parses as a valid domain name with a recognized top-level domain.

boolean isValidCountryCodeTld(java.lang.String ccTld)

Returns true if the specified String matches any IANA-defined country code top-level domain.

boolean isValidGenericTld(java.lang.String gTld)

Returns true if the specified String matches any IANA-defined generic top-level domain.

boolean isValidInfrastructureTld(java.lang.String iTld)

Returns true if the specified String matches any IANA-defined infrastructure top-level domain.

boolean isValidTld(java.lang.String tld)

Returns true if the specified String matches any IANA-defined top-level domain.

 
Methods inherited from class java.lang.Object
java.lang.Object#wait(), java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Method Detail

getInstance

public static DomainValidator getInstance()
Returns the singleton instance of this validator.
Returns:
the singleton instance of this validator


isValid

public boolean isValid(java.lang.String domain)
Returns true if the specified String parses as a valid domain name with a recognized top-level domain. The parsing is case-sensitive.
Parameters:
domain - the parameter to check for domain name syntax
Returns:
true if the parameter is a valid domain name


isValidCountryCodeTld

public boolean isValidCountryCodeTld(java.lang.String ccTld)
Returns true if the specified String matches any IANA-defined country code top-level domain. Leading dots are ignored if present. The search is case-sensitive.
Parameters:
ccTld - the parameter to check for country code TLD status
Returns:
true if the parameter is a country code TLD


isValidGenericTld

public boolean isValidGenericTld(java.lang.String gTld)
Returns true if the specified String matches any IANA-defined generic top-level domain. Leading dots are ignored if present. The search is case-sensitive.
Parameters:
gTld - the parameter to check for generic TLD status
Returns:
true if the parameter is a generic TLD


isValidInfrastructureTld

public boolean isValidInfrastructureTld(java.lang.String iTld)
Returns true if the specified String matches any IANA-defined infrastructure top-level domain. Leading dots are ignored if present. The search is case-sensitive.
Parameters:
iTld - the parameter to check for infrastructure TLD status
Returns:
true if the parameter is an infrastructure TLD


isValidTld

public boolean isValidTld(java.lang.String tld)
Returns true if the specified String matches any IANA-defined top-level domain. Leading dots are ignored if present. The search is case-sensitive.
Parameters:
tld - the parameter to check for TLD status
Returns:
true if the parameter is a TLD


 

Groovy Documentation