1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.resolver.dns;
17
18 import io.netty.bootstrap.Bootstrap;
19 import io.netty.channel.AddressedEnvelope;
20 import io.netty.channel.Channel;
21 import io.netty.channel.ChannelFuture;
22 import io.netty.handler.codec.dns.DatagramDnsQuery;
23 import io.netty.handler.codec.dns.DnsQuery;
24 import io.netty.handler.codec.dns.DnsQuestion;
25 import io.netty.handler.codec.dns.DnsRecord;
26 import io.netty.handler.codec.dns.DnsResponse;
27 import io.netty.util.concurrent.Future;
28 import io.netty.util.concurrent.Promise;
29
30 import java.net.InetSocketAddress;
31
32 final class DatagramDnsQueryContext extends DnsQueryContext {
33
34 DatagramDnsQueryContext(Channel channel,
35 InetSocketAddress nameServerAddr,
36 DnsQueryContextManager queryContextManager,
37 DnsQueryLifecycleObserver queryLifecycleObserver,
38 int maxPayLoadSize, boolean recursionDesired,
39 long queryTimeoutMillis,
40 DnsQuestion question, DnsRecord[] additionals,
41 Promise<AddressedEnvelope<DnsResponse, InetSocketAddress>> promise,
42 Bootstrap socketBootstrap, boolean retryWithTcpOnTimeout) {
43 super(channel, nameServerAddr, queryContextManager, queryLifecycleObserver, maxPayLoadSize, recursionDesired,
44 queryTimeoutMillis, question, additionals, promise, socketBootstrap, retryWithTcpOnTimeout);
45 }
46
47 @Override
48 protected DnsQuery newQuery(int id, InetSocketAddress nameServerAddr) {
49 return new DatagramDnsQuery(null, nameServerAddr, id);
50 }
51
52 @Override
53 protected String protocol() {
54 return "UDP";
55 }
56 }