Home / Function/ finishSuccess() — netty Function Reference

finishSuccess() — netty Function Reference

Architecture documentation for the finishSuccess() function in DnsQueryContext.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  ff2b708f_f879_8705_1346_618909272134["finishSuccess()"]
  360b8eed_0666_8e3d_9331_e795bb312381["DnsQueryContext"]
  ff2b708f_f879_8705_1346_618909272134 -->|defined in| 360b8eed_0666_8e3d_9331_e795bb312381
  4d492031_b30c_1800_087b_fedd91fd6347["retryWithTcp()"]
  4d492031_b30c_1800_087b_fedd91fd6347 -->|calls| ff2b708f_f879_8705_1346_618909272134
  597cf108_a486_921e_d8ff_fe8d9e0d3906["finishOriginal()"]
  597cf108_a486_921e_d8ff_fe8d9e0d3906 -->|calls| ff2b708f_f879_8705_1346_618909272134
  4d492031_b30c_1800_087b_fedd91fd6347["retryWithTcp()"]
  ff2b708f_f879_8705_1346_618909272134 -->|calls| 4d492031_b30c_1800_087b_fedd91fd6347
  2e4e47e0_096b_ad82_7737_711bae0bb104["equals()"]
  ff2b708f_f879_8705_1346_618909272134 -->|calls| 2e4e47e0_096b_ad82_7737_711bae0bb104
  15b8d7e2_1c7e_b2d0_cb57_de6cae85f5f0["trySuccess()"]
  ff2b708f_f879_8705_1346_618909272134 -->|calls| 15b8d7e2_1c7e_b2d0_cb57_de6cae85f5f0
  41c25c76_287c_2ab1_c00c_41ae4814b34c["release()"]
  ff2b708f_f879_8705_1346_618909272134 -->|calls| 41c25c76_287c_2ab1_c00c_41ae4814b34c
  style ff2b708f_f879_8705_1346_618909272134 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java lines 285–300

    void finishSuccess(AddressedEnvelope<? extends DnsResponse, InetSocketAddress> envelope, boolean truncated) {
        // Check if the response was not truncated or if a fallback to TCP is possible.
        if (!truncated || !retryWithTcp(envelope)) {
            final DnsResponse res = envelope.content();
            if (res.count(DnsSection.QUESTION) != 1) {
                logger.warn("{} Received a DNS response with invalid number of questions. Expected: 1, found: {}",
                        channel, envelope);
            } else if (!question().equals(res.recordAt(DnsSection.QUESTION))) {
                logger.warn("{} Received a mismatching DNS response. Expected: [{}], found: {}",
                        channel, question(), envelope);
            } else if (trySuccess(envelope)) {
                return; // Ownership transferred, don't release
            }
            envelope.release();
        }
    }

Subdomains

Frequently Asked Questions

What does finishSuccess() do?
finishSuccess() is a function in the netty codebase, defined in resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java.
Where is finishSuccess() defined?
finishSuccess() is defined in resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java at line 285.
What does finishSuccess() call?
finishSuccess() calls 4 function(s): equals, release, retryWithTcp, trySuccess.
What calls finishSuccess()?
finishSuccess() is called by 2 function(s): finishOriginal, retryWithTcp.

Analyze Your Own Codebase

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

Try Supermodel Free