Interface DnsResolver
-
- All Known Implementing Classes:
JndiDnsResolver
public interface DnsResolver
Helper class for DNS operations.- Since:
- 3.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.String
resolveIpAddress(java.lang.String hostname)
Resolves the IP Address (A record) to the specified host name.java.lang.String
resolveServiceEntry(java.lang.String serviceType, java.lang.String domain)
Resolves the host name for the specified service in the specified domainjava.lang.String
resolveServiceIpAddress(java.lang.String serviceType, java.lang.String domain)
Resolves the host name for the specified service and then the IP Address for this host in one call.
-
-
-
Method Detail
-
resolveIpAddress
java.lang.String resolveIpAddress(java.lang.String hostname) throws DnsEntryNotFoundException, DnsLookupException
Resolves the IP Address (A record) to the specified host name. Throws DnsEntryNotFoundException if there is no record.- Parameters:
hostname
- The hostname for which you need the IP Address- Returns:
- IP Address as a String
- Throws:
DnsEntryNotFoundException
- No record foundDnsLookupException
- Unknown DNS error
-
resolveServiceEntry
java.lang.String resolveServiceEntry(java.lang.String serviceType, java.lang.String domain) throws DnsEntryNotFoundException, DnsLookupException
Resolves the host name for the specified service in the specified domain
For example, if you need the host name for an LDAP server running in the domain springsource.com, you would call resolveServiceEntry("ldap", "springsource.com").
The DNS server needs to provide the service records for this, in the example above, it would look like this:
_ldap._tcp.springsource.com IN SRV 10 0 88 ldap.springsource.com.
The method will return the record with highest priority (which means the lowest number in the DNS record) and if there are more than one records with the same priority, it will return the one with the highest weight. You will find more informatione about DNS service records at Wikipedia.- Parameters:
serviceType
- The service type you are searching for, e.g. ldap, kerberos, ...domain
- The domain, in which you are searching for the service- Returns:
- The hostname of the service
- Throws:
DnsEntryNotFoundException
- No record foundDnsLookupException
- Unknown DNS error
-
resolveServiceIpAddress
java.lang.String resolveServiceIpAddress(java.lang.String serviceType, java.lang.String domain) throws DnsEntryNotFoundException, DnsLookupException
Resolves the host name for the specified service and then the IP Address for this host in one call.- Parameters:
serviceType
- The service type you are searching for, e.g. ldap, kerberos, ...domain
- The domain, in which you are searching for the service- Returns:
- IP Address of the service
- Throws:
DnsEntryNotFoundException
- No record foundDnsLookupException
- Unknown DNS error- See Also:
resolveServiceEntry(String, String)
,resolveIpAddress(String)
-
-