-
- All Known Implementing Classes:
DefaultDnsCache
,NoopDnsCache
public interface DnsCache
A cache for DNS resolution entries.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description DnsCacheEntry
cache(String hostname, DnsRecord[] additionals, Throwable cause, EventLoop loop)
Cache the resolution failure for a given hostname.DnsCacheEntry
cache(String hostname, DnsRecord[] additionals, InetAddress address, long originalTtl, EventLoop loop)
Create a newDnsCacheEntry
and cache a resolved address for a given hostname.void
clear()
Clears all the resolved addresses cached by this resolver.boolean
clear(String hostname)
Clears the resolved addresses of the specified host name from the cache of this resolver.List<? extends DnsCacheEntry>
get(String hostname, DnsRecord[] additionals)
Return the cached entries for the given hostname.
-
-
-
Method Detail
-
clear
void clear()
Clears all the resolved addresses cached by this resolver.- See Also:
clear(String)
-
clear
boolean clear(String hostname)
Clears the resolved addresses of the specified host name from the cache of this resolver.- Returns:
true
if and only if there was an entry for the specified host name in the cache and it has been removed by this method
-
get
List<? extends DnsCacheEntry> get(String hostname, DnsRecord[] additionals)
Return the cached entries for the given hostname.- Parameters:
hostname
- the hostnameadditionals
- the additional records- Returns:
- the cached entries
-
cache
DnsCacheEntry cache(String hostname, DnsRecord[] additionals, InetAddress address, long originalTtl, EventLoop loop)
Create a newDnsCacheEntry
and cache a resolved address for a given hostname.- Parameters:
hostname
- the hostnameadditionals
- the additional recordsaddress
- the resolved addressoriginalTtl
- the TLL as returned by the DNS serverloop
- theEventLoop
used to register the TTL timeout- Returns:
- The
DnsCacheEntry
corresponding to this cache entry.
-
cache
DnsCacheEntry cache(String hostname, DnsRecord[] additionals, Throwable cause, EventLoop loop)
Cache the resolution failure for a given hostname. Be aware this won't be called with timeout / cancel / transport exceptions.- Parameters:
hostname
- the hostnameadditionals
- the additional recordscause
- the resolution failureloop
- theEventLoop
used to register the TTL timeout- Returns:
- The
DnsCacheEntry
corresponding to this cache entry, ornull
if this cache doesn't support caching failed responses.
-
-