Home / Class/ InetNameResolver Class — netty Architecture

InetNameResolver Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  a03eeb78_c74f_2b05_275f_0aa0cba7f4eb["InetNameResolver"]
  593be6e7_d38c_d764_5e70_b6a28373626d["InetNameResolver.java"]
  a03eeb78_c74f_2b05_275f_0aa0cba7f4eb -->|defined in| 593be6e7_d38c_d764_5e70_b6a28373626d
  73ce78d3_a01c_695d_f002_1ef78b353238["InetNameResolver()"]
  a03eeb78_c74f_2b05_275f_0aa0cba7f4eb -->|method| 73ce78d3_a01c_695d_f002_1ef78b353238
  6fd44578_9493_096d_c07a_5e238265f03c["asAddressResolver()"]
  a03eeb78_c74f_2b05_275f_0aa0cba7f4eb -->|method| 6fd44578_9493_096d_c07a_5e238265f03c

Relationship Graph

Source Code

resolver/src/main/java/io/netty/resolver/InetNameResolver.java lines 27–54

public abstract class InetNameResolver extends SimpleNameResolver<InetAddress> {
    private volatile AddressResolver<InetSocketAddress> addressResolver;

    /**
     * @param executor the {@link EventExecutor} which is used to notify the listeners of the {@link Future} returned
     *                 by {@link #resolve(String)}
     */
    protected InetNameResolver(EventExecutor executor) {
        super(executor);
    }

    /**
     * Return a {@link AddressResolver} that will use this name resolver underneath.
     * It's cached internally, so the same instance is always returned.
     */
    public AddressResolver<InetSocketAddress> asAddressResolver() {
        AddressResolver<InetSocketAddress> result = addressResolver;
        if (result == null) {
            synchronized (this) {
                result = addressResolver;
                if (result == null) {
                    addressResolver = result = new InetSocketAddressResolver(executor(), this);
                }
            }
        }
        return result;
    }
}

Frequently Asked Questions

What is the InetNameResolver class?
InetNameResolver is a class in the netty codebase, defined in resolver/src/main/java/io/netty/resolver/InetNameResolver.java.
Where is InetNameResolver defined?
InetNameResolver is defined in resolver/src/main/java/io/netty/resolver/InetNameResolver.java at line 27.

Analyze Your Own Codebase

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

Try Supermodel Free