org.codehaus.groovy.grails.validation.routines
Class DomainValidator

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

public class DomainValidator
extends Object
implements Serializable

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 InetAddress for that functionality.)

Since:
Validator 1.4
Version:
$Revision: 594958 $ $Date: 2007-11-14 20:22:17 +0300 (Ср, 14 ноя 2007) $
See Also:
Serialized Form

Method Summary
static DomainValidator getInstance()
          Returns the singleton instance of this validator.
 boolean isValid(String domain)
          Returns true if the specified String parses as a valid domain name with a recognized top-level domain.
 boolean isValidCountryCodeTld(String ccTld)
          Returns true if the specified String matches any IANA-defined country code top-level domain.
 boolean isValidGenericTld(String gTld)
          Returns true if the specified String matches any IANA-defined generic top-level domain.
 boolean isValidInfrastructureTld(String iTld)
          Returns true if the specified String matches any IANA-defined infrastructure top-level domain.
 boolean isValidTld(String tld)
          Returns true if the specified String matches any IANA-defined top-level domain.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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(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

isValidTld

public boolean isValidTld(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

isValidInfrastructureTld

public boolean isValidInfrastructureTld(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

isValidGenericTld

public boolean isValidGenericTld(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

isValidCountryCodeTld

public boolean isValidCountryCodeTld(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


Copyright (c) 2005-2009 The Grails project