Interface DnsCache

All Known Implementing Classes:
DefaultDnsCache, NoopDnsCache

public interface DnsCache
A cache for DNS resolution entries.
  • Method Summary

    Modifier and Type
    Method
    Description
    cache(String hostname, io.netty.handler.codec.dns.DnsRecord[] additionals, Throwable cause, io.netty.channel.EventLoop loop)
    Cache the resolution failure for a given hostname.
    cache(String hostname, io.netty.handler.codec.dns.DnsRecord[] additionals, InetAddress address, long originalTtl, io.netty.channel.EventLoop loop)
    Create a new DnsCacheEntry and cache a resolved address for a given hostname.
    void
    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, io.netty.handler.codec.dns.DnsRecord[] additionals)
    Return the cached entries for the given hostname.
  • Method Details

    • clear

      void clear()
      Clears all the resolved addresses cached by this resolver.
      See Also:
    • 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, io.netty.handler.codec.dns.DnsRecord[] additionals)
      Return the cached entries for the given hostname.
      Parameters:
      hostname - the hostname
      additionals - the additional records
      Returns:
      the cached entries
    • cache

      DnsCacheEntry cache(String hostname, io.netty.handler.codec.dns.DnsRecord[] additionals, InetAddress address, long originalTtl, io.netty.channel.EventLoop loop)
      Create a new DnsCacheEntry and cache a resolved address for a given hostname.
      Parameters:
      hostname - the hostname
      additionals - the additional records
      address - the resolved address
      originalTtl - the TTL as returned by the DNS server
      loop - the EventLoop used to register the TTL timeout
      Returns:
      The DnsCacheEntry corresponding to this cache entry.
    • cache

      DnsCacheEntry cache(String hostname, io.netty.handler.codec.dns.DnsRecord[] additionals, Throwable cause, io.netty.channel.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 hostname
      additionals - the additional records
      cause - the resolution failure
      loop - the EventLoop used to register the TTL timeout
      Returns:
      The DnsCacheEntry corresponding to this cache entry, or null if this cache doesn't support caching failed responses.