Package org.minidns.source
Class AbstractDnsDataSource
- java.lang.Object
-
- org.minidns.source.AbstractDnsDataSource
-
- All Implemented Interfaces:
DnsDataSource
- Direct Known Subclasses:
AsyncNetworkDataSource,NetworkDataSource
public abstract class AbstractDnsDataSource extends java.lang.Object implements DnsDataSource
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAbstractDnsDataSource.QueryMode-
Nested classes/interfaces inherited from interface org.minidns.source.DnsDataSource
DnsDataSource.OnResponseCallback
-
-
Field Summary
Fields Modifier and Type Field Description protected inttimeoutDNS timeout.protected intudpPayloadSize
-
Constructor Summary
Constructors Constructor Description AbstractDnsDataSource()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidcacheResult(DnsMessage request, DnsQueryResult response)AbstractDnsDataSource.QueryModegetQueryMode()intgetTimeout()Retrieve the current dns query timeout, in milliseconds.intgetUdpPayloadSize()abstract DnsQueryResultquery(DnsMessage message, java.net.InetAddress address, int port)MiniDnsFuture<DnsQueryResult,java.io.IOException>queryAsync(DnsMessage message, java.net.InetAddress address, int port, DnsDataSource.OnResponseCallback onResponseCallback)voidsetQueryMode(AbstractDnsDataSource.QueryMode queryMode)voidsetTimeout(int timeout)Change the dns query timeout for all future queries.voidsetUdpPayloadSize(int udpPayloadSize)
-
-
-
Field Detail
-
udpPayloadSize
protected int udpPayloadSize
-
timeout
protected int timeout
DNS timeout.
-
-
Constructor Detail
-
AbstractDnsDataSource
public AbstractDnsDataSource()
-
-
Method Detail
-
query
public abstract DnsQueryResult query(DnsMessage message, java.net.InetAddress address, int port) throws java.io.IOException
- Specified by:
queryin interfaceDnsDataSource- Throws:
java.io.IOException
-
queryAsync
public MiniDnsFuture<DnsQueryResult,java.io.IOException> queryAsync(DnsMessage message, java.net.InetAddress address, int port, DnsDataSource.OnResponseCallback onResponseCallback)
- Specified by:
queryAsyncin interfaceDnsDataSource
-
getTimeout
public int getTimeout()
Description copied from interface:DnsDataSourceRetrieve the current dns query timeout, in milliseconds.- Specified by:
getTimeoutin interfaceDnsDataSource- Returns:
- the current dns query timeout in milliseconds.
-
setTimeout
public void setTimeout(int timeout)
Description copied from interface:DnsDataSourceChange the dns query timeout for all future queries. The timeout must be specified in milliseconds.- Specified by:
setTimeoutin interfaceDnsDataSource- Parameters:
timeout- new dns query timeout in milliseconds.
-
getUdpPayloadSize
public int getUdpPayloadSize()
- Specified by:
getUdpPayloadSizein interfaceDnsDataSource
-
setUdpPayloadSize
public void setUdpPayloadSize(int udpPayloadSize)
-
cacheResult
protected final void cacheResult(DnsMessage request, DnsQueryResult response)
-
setQueryMode
public void setQueryMode(AbstractDnsDataSource.QueryMode queryMode)
-
getQueryMode
public AbstractDnsDataSource.QueryMode getQueryMode()
-
-