Home / Class/ MultiDnsServerAddressStreamProvider Class — netty Architecture

MultiDnsServerAddressStreamProvider Class — netty Architecture

Architecture documentation for the MultiDnsServerAddressStreamProvider class in MultiDnsServerAddressStreamProvider.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  97cdf5dc_bbab_6540_b74b_f02266bf7983["MultiDnsServerAddressStreamProvider"]
  0be13fb3_e0a5_8e21_b6a3_bc60ca9175bb["MultiDnsServerAddressStreamProvider.java"]
  97cdf5dc_bbab_6540_b74b_f02266bf7983 -->|defined in| 0be13fb3_e0a5_8e21_b6a3_bc60ca9175bb
  13cc17e0_c0c2_0da0_ecf7_9d8de5821bd9["MultiDnsServerAddressStreamProvider()"]
  97cdf5dc_bbab_6540_b74b_f02266bf7983 -->|method| 13cc17e0_c0c2_0da0_ecf7_9d8de5821bd9
  c90aaffa_de03_a04c_0931_0d0b86f86245["DnsServerAddressStream()"]
  97cdf5dc_bbab_6540_b74b_f02266bf7983 -->|method| c90aaffa_de03_a04c_0931_0d0b86f86245

Relationship Graph

Source Code

resolver-dns/src/main/java/io/netty/resolver/dns/MultiDnsServerAddressStreamProvider.java lines 24–53

public final class MultiDnsServerAddressStreamProvider implements DnsServerAddressStreamProvider {
    private final DnsServerAddressStreamProvider[] providers;

    /**
     * Create a new instance.
     * @param providers The providers to use for DNS resolution. They will be queried in order.
     */
    public MultiDnsServerAddressStreamProvider(List<DnsServerAddressStreamProvider> providers) {
        this.providers = providers.toArray(new DnsServerAddressStreamProvider[0]);
    }

    /**
     * Create a new instance.
     * @param providers The providers to use for DNS resolution. They will be queried in order.
     */
    public MultiDnsServerAddressStreamProvider(DnsServerAddressStreamProvider... providers) {
        this.providers = providers.clone();
    }

    @Override
    public DnsServerAddressStream nameServerAddressStream(String hostname) {
        for (DnsServerAddressStreamProvider provider : providers) {
            DnsServerAddressStream stream = provider.nameServerAddressStream(hostname);
            if (stream != null) {
                return stream;
            }
        }
        return null;
    }
}

Frequently Asked Questions

What is the MultiDnsServerAddressStreamProvider class?
MultiDnsServerAddressStreamProvider is a class in the netty codebase, defined in resolver-dns/src/main/java/io/netty/resolver/dns/MultiDnsServerAddressStreamProvider.java.
Where is MultiDnsServerAddressStreamProvider defined?
MultiDnsServerAddressStreamProvider is defined in resolver-dns/src/main/java/io/netty/resolver/dns/MultiDnsServerAddressStreamProvider.java at line 24.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free