Home / Class/ LoggingDnsQueryLifecycleObserver Class — netty Architecture

LoggingDnsQueryLifecycleObserver Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  a78a331f_f969_eaf9_0bdc_43f206aa568f["LoggingDnsQueryLifecycleObserver"]
  68a42b63_1357_a08e_89c7_1d6337f25db9["LoggingDnsQueryLifecycleObserver.java"]
  a78a331f_f969_eaf9_0bdc_43f206aa568f -->|defined in| 68a42b63_1357_a08e_89c7_1d6337f25db9
  79e1030d_2f56_5efd_6fd4_bf9f4e725458["LoggingDnsQueryLifecycleObserver()"]
  a78a331f_f969_eaf9_0bdc_43f206aa568f -->|method| 79e1030d_2f56_5efd_6fd4_bf9f4e725458
  82552e05_0b5e_ea0b_1480_120ebd85efe2["queryWritten()"]
  a78a331f_f969_eaf9_0bdc_43f206aa568f -->|method| 82552e05_0b5e_ea0b_1480_120ebd85efe2
  7e9a4492_b868_abb7_6913_8b43d2973257["queryCancelled()"]
  a78a331f_f969_eaf9_0bdc_43f206aa568f -->|method| 7e9a4492_b868_abb7_6913_8b43d2973257
  055b0776_4081_ac72_f05a_e03d376063c1["DnsQueryLifecycleObserver()"]
  a78a331f_f969_eaf9_0bdc_43f206aa568f -->|method| 055b0776_4081_ac72_f05a_e03d376063c1
  0b2ff137_b650_43a3_413b_9f1f2f8eb67c["queryFailed()"]
  a78a331f_f969_eaf9_0bdc_43f206aa568f -->|method| 0b2ff137_b650_43a3_413b_9f1f2f8eb67c
  9c4909e9_e936_64a9_371b_ec2ace9498b9["querySucceed()"]
  a78a331f_f969_eaf9_0bdc_43f206aa568f -->|method| 9c4909e9_e936_64a9_371b_ec2ace9498b9

Relationship Graph

Source Code

resolver-dns/src/main/java/io/netty/resolver/dns/LoggingDnsQueryLifecycleObserver.java lines 29–87

final class LoggingDnsQueryLifecycleObserver implements DnsQueryLifecycleObserver {
    private final InternalLogger logger;
    private final InternalLogLevel level;
    private final DnsQuestion question;
    private InetSocketAddress dnsServerAddress;

    LoggingDnsQueryLifecycleObserver(DnsQuestion question, InternalLogger logger, InternalLogLevel level) {
        this.question = checkNotNull(question, "question");
        this.logger = checkNotNull(logger, "logger");
        this.level = checkNotNull(level, "level");
    }

    @Override
    public void queryWritten(InetSocketAddress dnsServerAddress, ChannelFuture future) {
        this.dnsServerAddress = dnsServerAddress;
    }

    @Override
    public void queryCancelled(int queriesRemaining) {
        if (dnsServerAddress != null) {
            logger.log(level, "from {} : {} cancelled with {} queries remaining", dnsServerAddress, question,
                        queriesRemaining);
        } else {
            logger.log(level, "{} query never written and cancelled with {} queries remaining", question,
                        queriesRemaining);
        }
    }

    @Override
    public DnsQueryLifecycleObserver queryRedirected(List<InetSocketAddress> nameServers) {
        logger.log(level, "from {} : {} redirected", dnsServerAddress, question);
        return this;
    }

    @Override
    public DnsQueryLifecycleObserver queryCNAMEd(DnsQuestion cnameQuestion) {
        logger.log(level, "from {} : {} CNAME question {}", dnsServerAddress, question, cnameQuestion);
        return this;
    }

    @Override
    public DnsQueryLifecycleObserver queryNoAnswer(DnsResponseCode code) {
        logger.log(level, "from {} : {} no answer {}", dnsServerAddress, question, code);
        return this;
    }

    @Override
    public void queryFailed(Throwable cause) {
        if (dnsServerAddress != null) {
            logger.log(level, "from {} : {} failure", dnsServerAddress, question, cause);
        } else {
            logger.log(level, "{} query never written and failed", question, cause);
        }
    }

    @Override
    public void querySucceed() {
    }
}

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free