org.xbill.DNS
Constructor and Description |
---|
ExtendedResolver()
Creates a new Extended Resolver.
|
ExtendedResolver(Resolver[] res)
Creates a new Extended Resolver
|
ExtendedResolver(java.lang.String[] servers)
Creates a new Extended Resolver
|
Modifier and Type | Method and Description |
---|---|
void |
addResolver(Resolver r)
Adds a new resolver to be used by this ExtendedResolver
|
void |
deleteResolver(Resolver r)
Deletes a resolver used by this ExtendedResolver
|
Resolver |
getResolver(int n)
Returns the nth resolver used by this ExtendedResolver
|
Resolver[] |
getResolvers()
Returns all resolvers used by this ExtendedResolver
|
Message |
send(Message query)
Sends a message and waits for a response.
|
java.lang.Object |
sendAsync(Message query,
ResolverListener listener)
Asynchronously sends a message to multiple servers, potentially multiple
times, registering a listener to receive a callback on success or exception.
|
void |
setEDNS(int level)
Sets the EDNS version used on outgoing messages.
|
void |
setEDNS(int level,
int payloadSize,
int flags,
java.util.List options)
Sets the EDNS information on outgoing messages.
|
void |
setIgnoreTruncation(boolean flag)
Sets whether truncated responses will be ignored.
|
void |
setLoadBalance(boolean flag)
Sets whether the servers should be load balanced.
|
void |
setPort(int port)
Sets the port to communicate with on the server
|
void |
setRetries(int retries)
Sets the number of retries sent to each server per query
|
void |
setTCP(boolean flag)
Sets whether TCP connections will be sent by default
|
void |
setTimeout(int secs)
Sets the amount of time to wait for a response before giving up.
|
void |
setTimeout(int secs,
int msecs)
Sets the amount of time to wait for a response before giving up.
|
void |
setTSIGKey(TSIG key)
Specifies the TSIG key that messages will be signed with
|
public ExtendedResolver() throws java.net.UnknownHostException
java.net.UnknownHostException
- Failure occured initializing SimpleResolversSimpleResolver
,
ResolverConfig
public ExtendedResolver(java.lang.String[] servers) throws java.net.UnknownHostException
servers
- An array of server names for which SimpleResolver
contexts should be initialized.java.net.UnknownHostException
- Failure occured initializing SimpleResolversSimpleResolver
public ExtendedResolver(Resolver[] res) throws java.net.UnknownHostException
res
- An array of pre-initialized Resolvers is provided.java.net.UnknownHostException
- Failure occured initializing SimpleResolversSimpleResolver
public void setPort(int port)
Resolver
public void setTCP(boolean flag)
Resolver
public void setIgnoreTruncation(boolean flag)
Resolver
setIgnoreTruncation
in interface Resolver
flag
- Indicates whether truncated responses should be ignored.public void setEDNS(int level)
Resolver
public void setEDNS(int level, int payloadSize, int flags, java.util.List options)
Resolver
setEDNS
in interface Resolver
level
- The EDNS level to use. 0 indicates EDNS0 and -1 indicates no
EDNS.payloadSize
- The maximum DNS packet size that this host is capable
of receiving over UDP. If 0 is specified, the default (1280) is used.flags
- EDNS extended flags to be set in the OPT record.options
- EDNS options to be set in the OPT record, specified as a
List of OPTRecord.Option elements.OPTRecord
public void setTSIGKey(TSIG key)
Resolver
setTSIGKey
in interface Resolver
key
- The keypublic void setTimeout(int secs, int msecs)
Resolver
setTimeout
in interface Resolver
secs
- The number of seconds to wait.msecs
- The number of milliseconds to wait.public void setTimeout(int secs)
Resolver
setTimeout
in interface Resolver
secs
- The number of seconds to wait.public Message send(Message query) throws java.io.IOException
public java.lang.Object sendAsync(Message query, ResolverListener listener)
public Resolver getResolver(int n)
public Resolver[] getResolvers()
public void addResolver(Resolver r)
public void deleteResolver(Resolver r)
public void setLoadBalance(boolean flag)
flag
- If true, servers will be tried in round-robin order. If false,
servers will always be queried in the same order.public void setRetries(int retries)