Package io.netty.resolver.dns
Class DefaultDnsCnameCache
- java.lang.Object
-
- io.netty.resolver.dns.DefaultDnsCnameCache
-
- All Implemented Interfaces:
DnsCnameCache
public final class DefaultDnsCnameCache extends java.lang.Object implements DnsCnameCache
Default implementation of aDnsCnameCache.
-
-
Constructor Summary
Constructors Constructor Description DefaultDnsCnameCache()Create a cache that respects the TTL returned by the DNS server.DefaultDnsCnameCache(int minTtl, int maxTtl)Create a cache.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcache(java.lang.String hostname, java.lang.String cname, long originalTtl, EventLoop loop)Caches a cname entry that should be used for the given hostname.voidclear()Clears all cached nameservers.booleanclear(java.lang.String hostname)Clears the cached nameservers for the specified hostname.java.lang.Stringget(java.lang.String hostname)Returns the cached cname for the given hostname.(package private) intmaxTtl()(package private) intminTtl()
-
-
-
Field Detail
-
minTtl
private final int minTtl
-
maxTtl
private final int maxTtl
-
cache
private final Cache<java.lang.String> cache
-
-
Method Detail
-
get
public java.lang.String get(java.lang.String hostname)
Description copied from interface:DnsCnameCacheReturns the cached cname for the given hostname.- Specified by:
getin interfaceDnsCnameCache- Parameters:
hostname- the hostname- Returns:
- the cached entries or an
nullif none.
-
cache
public void cache(java.lang.String hostname, java.lang.String cname, long originalTtl, EventLoop loop)Description copied from interface:DnsCnameCacheCaches a cname entry that should be used for the given hostname.- Specified by:
cachein interfaceDnsCnameCache- Parameters:
hostname- the hostnamecname- the cname mapping.originalTtl- the TTL as returned by the DNS serverloop- theEventLoopused to register the TTL timeout
-
clear
public void clear()
Description copied from interface:DnsCnameCacheClears all cached nameservers.- Specified by:
clearin interfaceDnsCnameCache- See Also:
DnsCnameCache.clear(String)
-
clear
public boolean clear(java.lang.String hostname)
Description copied from interface:DnsCnameCacheClears the cached nameservers for the specified hostname.- Specified by:
clearin interfaceDnsCnameCache- Returns:
trueif and only if there was an entry for the specified host name in the cache and it has been removed by this method
-
minTtl
int minTtl()
-
maxTtl
int maxTtl()
-
-