1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty5.resolver.dns;
17
18 import io.netty5.channel.AddressedEnvelope;
19 import io.netty5.channel.Channel;
20 import io.netty5.handler.codec.dns.DefaultDnsQuery;
21 import io.netty5.handler.codec.dns.DnsQuery;
22 import io.netty5.handler.codec.dns.DnsQuestion;
23 import io.netty5.handler.codec.dns.DnsRecord;
24 import io.netty5.handler.codec.dns.DnsResponse;
25 import io.netty5.util.concurrent.Promise;
26
27 import java.net.InetSocketAddress;
28
29 final class TcpDnsQueryContext extends DnsQueryContext {
30
31 private final Channel channel;
32
33 TcpDnsQueryContext(DnsNameResolver parent, Channel channel, InetSocketAddress nameServerAddr, DnsQuestion question,
34 DnsRecord[] additionals, Promise<AddressedEnvelope<DnsResponse, InetSocketAddress>> promise) {
35 super(parent, nameServerAddr, question, additionals, promise);
36 this.channel = channel;
37 }
38
39 @Override
40 protected DnsQuery newQuery(int id) {
41 return new DefaultDnsQuery(id);
42 }
43
44 @Override
45 protected Channel channel() {
46 return channel;
47 }
48
49 @Override
50 protected String protocol() {
51 return "TCP";
52 }
53 }