- java.lang.Object
-
- com.aoapps.net.HostAddress
-
- All Implemented Interfaces:
DtoFactory<HostAddress>
,Internable<HostAddress>
,Serializable
,Comparable<HostAddress>
public final class HostAddress extends Object implements Comparable<HostAddress>, Serializable, DtoFactory<HostAddress>, Internable<HostAddress>
Represents a host's address as either aDomainName
or anInetAddress
. To not allow the IP address representation, useDomainName
instead. No DNS lookups are performed during validation.- Author:
- AO Industries, Inc.
- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(HostAddress other)
Sorts IP addresses before domain names.boolean
equals(Object obj)
DomainName
getDomainName()
HostAddress
getDto()
InetAddress
getInetAddress()
int
hashCode()
HostAddress
intern()
Interns this host address much in the same fashion asString.intern()
.String
toBracketedString()
String
toString()
static ValidationResult
validate(String address)
Validates a host address, must be either a valid domain name or a valid IP address.static HostAddress
valueOf(DomainName domainName)
If domainName is null, returns null.static HostAddress
valueOf(InetAddress ip)
If ip is null, returns null.static HostAddress
valueOf(String address)
-
-
-
Method Detail
-
validate
public static ValidationResult validate(String address)
Validates a host address, must be either a valid domain name or a valid IP address.When enclosed in brackets
"[...]"
, will be validated as an IPv6InetAddress
(seetoBracketedString()
).TODO: Must be non-arpa
-
valueOf
public static HostAddress valueOf(String address) throws ValidationException
- Parameters:
address
- whennull
, returnsnull
- Throws:
ValidationException
-
valueOf
public static HostAddress valueOf(DomainName domainName)
If domainName is null, returns null.
-
valueOf
public static HostAddress valueOf(InetAddress ip)
If ip is null, returns null.
-
compareTo
public int compareTo(HostAddress other)
Sorts IP addresses before domain names.- Specified by:
compareTo
in interfaceComparable<HostAddress>
-
toBracketedString
public String toBracketedString()
-
intern
public HostAddress intern()
Interns this host address much in the same fashion asString.intern()
.- Specified by:
intern
in interfaceInternable<HostAddress>
- See Also:
String.intern()
-
getDomainName
public DomainName getDomainName()
-
getInetAddress
public InetAddress getInetAddress()
-
getDto
public HostAddress getDto()
- Specified by:
getDto
in interfaceDtoFactory<HostAddress>
-
-