abstract class io.netty.resolver.dns.DnsResolveContext<T>
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: io.netty.resolver.dns.DnsResolveContext
super_class: java.lang.Object
{
private static final io.netty.util.concurrent.FutureListener<io.netty.channel.AddressedEnvelope<io.netty.handler.codec.dns.DnsResponse, java.net.InetSocketAddress>> RELEASE_RESPONSE;
descriptor: Lio/netty/util/concurrent/FutureListener;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lio/netty/util/concurrent/FutureListener<Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;>;
private static final java.lang.RuntimeException NXDOMAIN_QUERY_FAILED_EXCEPTION;
descriptor: Ljava/lang/RuntimeException;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.RuntimeException CNAME_NOT_FOUND_QUERY_FAILED_EXCEPTION;
descriptor: Ljava/lang/RuntimeException;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.RuntimeException NO_MATCHING_RECORD_QUERY_FAILED_EXCEPTION;
descriptor: Ljava/lang/RuntimeException;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.RuntimeException UNRECOGNIZED_TYPE_QUERY_FAILED_EXCEPTION;
descriptor: Ljava/lang/RuntimeException;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.RuntimeException NAME_SERVERS_EXHAUSTED_EXCEPTION;
descriptor: Ljava/lang/RuntimeException;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
final io.netty.resolver.dns.DnsNameResolver parent;
descriptor: Lio/netty/resolver/dns/DnsNameResolver;
flags: (0x0010) ACC_FINAL
private final io.netty.resolver.dns.DnsServerAddressStream nameServerAddrs;
descriptor: Lio/netty/resolver/dns/DnsServerAddressStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String hostname;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int dnsClass;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.handler.codec.dns.DnsRecordType[] expectedTypes;
descriptor: [Lio/netty/handler/codec/dns/DnsRecordType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int maxAllowedQueries;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.handler.codec.dns.DnsRecord[] additionals;
descriptor: [Lio/netty/handler/codec/dns/DnsRecord;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Set<io.netty.util.concurrent.Future<io.netty.channel.AddressedEnvelope<io.netty.handler.codec.dns.DnsResponse, java.net.InetSocketAddress>>> queriesInProgress;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Lio/netty/util/concurrent/Future<Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;>;>;
private java.util.List<T> finalResult;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<TT;>;
private int allowedQueries;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean triedCNAME;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc Lio/netty/resolver/dns/DnsResolveContext;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic io.netty.resolver.dns.DnsResolveContext.$assertionsDisabled:Z
3: new io.netty.resolver.dns.DnsResolveContext$1
dup
invokespecial io.netty.resolver.dns.DnsResolveContext$1.<init>:()V
4: putstatic io.netty.resolver.dns.DnsResolveContext.RELEASE_RESPONSE:Lio/netty/util/concurrent/FutureListener;
5: new java.lang.RuntimeException
dup
ldc "No answer found and NXDOMAIN response code returned"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
6: ldc Lio/netty/resolver/dns/DnsResolveContext;
7: ldc "onResponse(..)"
8: invokestatic io.netty.util.internal.ThrowableUtil.unknownStackTrace:(Ljava/lang/Throwable;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Throwable;
checkcast java.lang.RuntimeException
putstatic io.netty.resolver.dns.DnsResolveContext.NXDOMAIN_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
9: new java.lang.RuntimeException
dup
ldc "No matching CNAME record found"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
10: ldc Lio/netty/resolver/dns/DnsResolveContext;
11: ldc "onResponseCNAME(..)"
12: invokestatic io.netty.util.internal.ThrowableUtil.unknownStackTrace:(Ljava/lang/Throwable;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Throwable;
checkcast java.lang.RuntimeException
putstatic io.netty.resolver.dns.DnsResolveContext.CNAME_NOT_FOUND_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
13: new java.lang.RuntimeException
dup
ldc "No matching record type found"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
14: ldc Lio/netty/resolver/dns/DnsResolveContext;
15: ldc "onResponseAorAAAA(..)"
16: invokestatic io.netty.util.internal.ThrowableUtil.unknownStackTrace:(Ljava/lang/Throwable;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Throwable;
checkcast java.lang.RuntimeException
putstatic io.netty.resolver.dns.DnsResolveContext.NO_MATCHING_RECORD_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
17: new java.lang.RuntimeException
dup
ldc "Response type was unrecognized"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
18: ldc Lio/netty/resolver/dns/DnsResolveContext;
19: ldc "onResponse(..)"
20: invokestatic io.netty.util.internal.ThrowableUtil.unknownStackTrace:(Ljava/lang/Throwable;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Throwable;
checkcast java.lang.RuntimeException
putstatic io.netty.resolver.dns.DnsResolveContext.UNRECOGNIZED_TYPE_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
21: new java.lang.RuntimeException
dup
ldc "No name servers returned an answer"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
22: ldc Lio/netty/resolver/dns/DnsResolveContext;
23: ldc "tryToFinishResolve(..)"
24: invokestatic io.netty.util.internal.ThrowableUtil.unknownStackTrace:(Ljava/lang/Throwable;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Throwable;
checkcast java.lang.RuntimeException
putstatic io.netty.resolver.dns.DnsResolveContext.NAME_SERVERS_EXHAUSTED_EXCEPTION:Ljava/lang/RuntimeException;
25: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(io.netty.resolver.dns.DnsNameResolver, java.lang.String, int, io.netty.handler.codec.dns.DnsRecordType[], io.netty.handler.codec.dns.DnsRecord[], io.netty.resolver.dns.DnsServerAddressStream);
descriptor: (Lio/netty/resolver/dns/DnsNameResolver;Ljava/lang/String;I[Lio/netty/handler/codec/dns/DnsRecordType;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/resolver/dns/DnsServerAddressStream;)V
flags: (0x0000)
Code:
stack=3, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: new java.util.IdentityHashMap
dup
invokespecial java.util.IdentityHashMap.<init>:()V
3: invokestatic java.util.Collections.newSetFromMap:(Ljava/util/Map;)Ljava/util/Set;
putfield io.netty.resolver.dns.DnsResolveContext.queriesInProgress:Ljava/util/Set;
4: getstatic io.netty.resolver.dns.DnsResolveContext.$assertionsDisabled:Z
ifne 5
aload 4
arraylength
ifgt 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.resolver.dns.DnsNameResolver java.lang.String int io.netty.handler.codec.dns.DnsRecordType[] io.netty.handler.codec.dns.DnsRecord[] io.netty.resolver.dns.DnsServerAddressStream
StackMap stack:
aload 0
aload 1
putfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
6: aload 0
aload 2
putfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
7: aload 0
iload 3
putfield io.netty.resolver.dns.DnsResolveContext.dnsClass:I
8: aload 0
aload 4
putfield io.netty.resolver.dns.DnsResolveContext.expectedTypes:[Lio/netty/handler/codec/dns/DnsRecordType;
9: aload 0
aload 5
putfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
10: aload 0
aload 6
ldc "nameServerAddrs"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.resolver.dns.DnsServerAddressStream
putfield io.netty.resolver.dns.DnsResolveContext.nameServerAddrs:Lio/netty/resolver/dns/DnsServerAddressStream;
11: aload 0
aload 1
invokevirtual io.netty.resolver.dns.DnsNameResolver.maxQueriesPerResolve:()I
putfield io.netty.resolver.dns.DnsResolveContext.maxAllowedQueries:I
12: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.maxAllowedQueries:I
putfield io.netty.resolver.dns.DnsResolveContext.allowedQueries:I
13: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 14 1 parent Lio/netty/resolver/dns/DnsNameResolver;
0 14 2 hostname Ljava/lang/String;
0 14 3 dnsClass I
0 14 4 expectedTypes [Lio/netty/handler/codec/dns/DnsRecordType;
0 14 5 additionals [Lio/netty/handler/codec/dns/DnsRecord;
0 14 6 nameServerAddrs Lio/netty/resolver/dns/DnsServerAddressStream;
MethodParameters:
Name Flags
parent
hostname
dnsClass
expectedTypes
additionals
nameServerAddrs
abstract io.netty.resolver.dns.DnsResolveContext<T> newResolverContext(io.netty.resolver.dns.DnsNameResolver, java.lang.String, int, io.netty.handler.codec.dns.DnsRecordType[], io.netty.handler.codec.dns.DnsRecord[], io.netty.resolver.dns.DnsServerAddressStream);
descriptor: (Lio/netty/resolver/dns/DnsNameResolver;Ljava/lang/String;I[Lio/netty/handler/codec/dns/DnsRecordType;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/resolver/dns/DnsServerAddressStream;)Lio/netty/resolver/dns/DnsResolveContext;
flags: (0x0400) ACC_ABSTRACT
Signature: (Lio/netty/resolver/dns/DnsNameResolver;Ljava/lang/String;I[Lio/netty/handler/codec/dns/DnsRecordType;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/resolver/dns/DnsServerAddressStream;)Lio/netty/resolver/dns/DnsResolveContext<TT;>;
MethodParameters:
Name Flags
parent
hostname
dnsClass
expectedTypes
additionals
nameServerAddrs
abstract T convertRecord(io.netty.handler.codec.dns.DnsRecord, java.lang.String, io.netty.handler.codec.dns.DnsRecord[], io.netty.channel.EventLoop);
descriptor: (Lio/netty/handler/codec/dns/DnsRecord;Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/channel/EventLoop;)Ljava/lang/Object;
flags: (0x0400) ACC_ABSTRACT
Signature: (Lio/netty/handler/codec/dns/DnsRecord;Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/channel/EventLoop;)TT;
MethodParameters:
Name Flags
record
hostname
additionals
eventLoop
abstract java.util.List<T> filterResults(java.util.List<T>);
descriptor: (Ljava/util/List;)Ljava/util/List;
flags: (0x0400) ACC_ABSTRACT
Signature: (Ljava/util/List<TT;>;)Ljava/util/List<TT;>;
MethodParameters:
Name Flags
unfiltered
abstract void cache(java.lang.String, io.netty.handler.codec.dns.DnsRecord[], io.netty.handler.codec.dns.DnsRecord, );
descriptor: (Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/handler/codec/dns/DnsRecord;Ljava/lang/Object;)V
flags: (0x0400) ACC_ABSTRACT
Signature: (Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/handler/codec/dns/DnsRecord;TT;)V
MethodParameters:
Name Flags
hostname
additionals
result
convertedResult
abstract void cache(java.lang.String, io.netty.handler.codec.dns.DnsRecord[], java.net.UnknownHostException);
descriptor: (Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Ljava/net/UnknownHostException;)V
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
hostname
additionals
cause
void resolve(io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Lio/netty/util/concurrent/Promise;)V
flags: (0x0000)
Code:
stack=9, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.searchDomains:()[Ljava/lang/String;
astore 2
start local 2 1: aload 2
arraylength
ifeq 2
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.ndots:()I
ifeq 2
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
bipush 46
invokestatic io.netty.util.internal.StringUtil.endsWith:(Ljava/lang/CharSequence;C)Z
ifeq 4
2: StackMap locals: java.lang.String[]
StackMap stack:
aload 0
aload 1
invokevirtual io.netty.resolver.dns.DnsResolveContext.internalResolve:(Lio/netty/util/concurrent/Promise;)V
3: goto 12
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.resolver.dns.DnsResolveContext.hasNDots:()Z
istore 3
start local 3 5: iload 3
ifeq 6
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
goto 7
StackMap locals: int
StackMap stack:
6: new java.lang.StringBuilder
dup
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 2
iconst_0
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
7: astore 4
start local 4 8: iload 3
ifeq 9
iconst_0
goto 10
StackMap locals: java.lang.String
StackMap stack:
9: iconst_1
StackMap locals:
StackMap stack: int
10: istore 5
start local 5 11: aload 0
aload 4
new io.netty.resolver.dns.DnsResolveContext$2
dup
aload 0
iload 5
aload 1
aload 2
iload 3
invokespecial io.netty.resolver.dns.DnsResolveContext$2.<init>:(Lio/netty/resolver/dns/DnsResolveContext;ILio/netty/util/concurrent/Promise;[Ljava/lang/String;Z)V
invokevirtual io.netty.resolver.dns.DnsResolveContext.doSearchDomainQuery:(Ljava/lang/String;Lio/netty/util/concurrent/FutureListener;)V
end local 5 end local 4 end local 3 12: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 13 1 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 13 2 searchDomains [Ljava/lang/String;
5 12 3 startWithoutSearchDomain Z
8 12 4 initialHostname Ljava/lang/String;
11 12 5 initialSearchDomainIdx I
Signature: (Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
promise final
private boolean hasNDots();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iconst_1
isub
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 6
3: StackMap locals: int int
StackMap stack:
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
iload 1
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 5
iinc 2 1
iload 2
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.ndots:()I
if_icmplt 5
4: iconst_1
ireturn
5: StackMap locals:
StackMap stack:
iinc 1 -1
StackMap locals:
StackMap stack:
6: iload 1
ifge 3
end local 2 end local 1 7: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
1 7 1 idx I
2 7 2 dots I
private void doSearchDomainQuery(java.lang.String, io.netty.util.concurrent.FutureListener<java.util.List<T>>);
descriptor: (Ljava/lang/String;Lio/netty/util/concurrent/FutureListener;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
aload 1
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.dnsClass:I
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.expectedTypes:[Lio/netty/handler/codec/dns/DnsRecordType;
1: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.nameServerAddrs:Lio/netty/resolver/dns/DnsServerAddressStream;
2: invokevirtual io.netty.resolver.dns.DnsResolveContext.newResolverContext:(Lio/netty/resolver/dns/DnsNameResolver;Ljava/lang/String;I[Lio/netty/handler/codec/dns/DnsRecordType;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/resolver/dns/DnsServerAddressStream;)Lio/netty/resolver/dns/DnsResolveContext;
astore 3
start local 3 3: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.executor:()Lio/netty/channel/EventLoop;
invokeinterface io.netty.channel.EventLoop.newPromise:()Lio/netty/util/concurrent/Promise;
astore 4
start local 4 4: aload 3
aload 4
invokevirtual io.netty.resolver.dns.DnsResolveContext.internalResolve:(Lio/netty/util/concurrent/Promise;)V
5: aload 4
aload 2
invokeinterface io.netty.util.concurrent.Promise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Promise;
pop
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 7 1 hostname Ljava/lang/String;
0 7 2 listener Lio/netty/util/concurrent/FutureListener<Ljava/util/List<TT;>;>;
3 7 3 nextContext Lio/netty/resolver/dns/DnsResolveContext<TT;>;
4 7 4 nextPromise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
Signature: (Ljava/lang/String;Lio/netty/util/concurrent/FutureListener<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
hostname
listener
private void internalResolve(io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Lio/netty/util/concurrent/Promise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
invokevirtual io.netty.resolver.dns.DnsResolveContext.getNameServers:(Ljava/lang/String;)Lio/netty/resolver/dns/DnsServerAddressStream;
astore 2
start local 2 1: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.expectedTypes:[Lio/netty/handler/codec/dns/DnsRecordType;
arraylength
iconst_1
isub
istore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 7
4: StackMap locals: io.netty.resolver.dns.DnsServerAddressStream int int
StackMap stack:
aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.expectedTypes:[Lio/netty/handler/codec/dns/DnsRecordType;
iload 4
aaload
aload 2
invokeinterface io.netty.resolver.dns.DnsServerAddressStream.duplicate:()Lio/netty/resolver/dns/DnsServerAddressStream;
aload 1
invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;Lio/netty/resolver/dns/DnsServerAddressStream;Lio/netty/util/concurrent/Promise;)Z
ifne 6
5: return
6: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
iload 3
if_icmplt 4
end local 4 8: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.expectedTypes:[Lio/netty/handler/codec/dns/DnsRecordType;
iload 3
aaload
aload 2
aload 1
invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;Lio/netty/resolver/dns/DnsServerAddressStream;Lio/netty/util/concurrent/Promise;)Z
pop
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 10 1 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 10 2 nameServerAddressStream Lio/netty/resolver/dns/DnsServerAddressStream;
2 10 3 end I
3 8 4 i I
Signature: (Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
promise
private void addNameServerToCache(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer, java.net.InetAddress, long);
descriptor: (Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServer;Ljava/net/InetAddress;J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer.isRootServer:()Z
ifne 4
1: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.authoritativeDnsServerCache:()Lio/netty/resolver/dns/DnsCache;
aload 1
invokevirtual io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer.domainName:()Ljava/lang/String;
2: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
aload 2
lload 3
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
getfield io.netty.resolver.dns.DnsNameResolver.ch:Lio/netty/channel/socket/DatagramChannel;
invokeinterface io.netty.channel.socket.DatagramChannel.eventLoop:()Lio/netty/channel/EventLoop;
3: invokeinterface io.netty.resolver.dns.DnsCache.cache:(Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Ljava/net/InetAddress;JLio/netty/channel/EventLoop;)Lio/netty/resolver/dns/DnsCacheEntry;
pop
4: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 5 1 name Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServer;
0 5 2 resolved Ljava/net/InetAddress;
0 5 3 ttl J
MethodParameters:
Name Flags
name
resolved
ttl
private io.netty.resolver.dns.DnsServerAddressStream getNameServersFromCache(java.lang.String);
descriptor: (Ljava/lang/String;)Lio/netty/resolver/dns/DnsServerAddressStream;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.String.length:()I
istore 2
start local 2 1: iload 2
ifne 3
2: aconst_null
areturn
3: StackMap locals: int
StackMap stack:
aload 1
iload 2
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpeq 5
4: new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
5: StackMap locals:
StackMap stack:
aload 1
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
istore 3
start local 3 6: iload 3
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpne 8
7: aconst_null
areturn
8: StackMap locals: int
StackMap stack:
aload 1
iload 3
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
9: aload 1
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
istore 4
start local 4 10: iload 4
ifle 11
iload 4
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpne 12
11: StackMap locals: int
StackMap stack:
aconst_null
areturn
12: StackMap locals:
StackMap stack:
iload 4
istore 3
13: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.authoritativeDnsServerCache:()Lio/netty/resolver/dns/DnsCache;
aload 1
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
invokeinterface io.netty.resolver.dns.DnsCache.get:(Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;)Ljava/util/List;
astore 5
start local 5 14: aload 5
ifnull 8
aload 5
invokeinterface java.util.List.isEmpty:()Z
ifne 8
15: new io.netty.resolver.dns.DnsResolveContext$DnsCacheIterable
dup
aload 0
aload 5
invokespecial io.netty.resolver.dns.DnsResolveContext$DnsCacheIterable.<init>:(Lio/netty/resolver/dns/DnsResolveContext;Ljava/util/List;)V
invokestatic io.netty.resolver.dns.DnsServerAddresses.sequential:(Ljava/lang/Iterable;)Lio/netty/resolver/dns/DnsServerAddresses;
invokevirtual io.netty.resolver.dns.DnsServerAddresses.stream:()Lio/netty/resolver/dns/DnsServerAddressStream;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 16 1 hostname Ljava/lang/String;
1 16 2 len I
6 16 3 idx I
10 16 4 idx2 I
14 16 5 entries Ljava/util/List<+Lio/netty/resolver/dns/DnsCacheEntry;>;
MethodParameters:
Name Flags
hostname
private void query(io.netty.resolver.dns.DnsServerAddressStream, int, io.netty.handler.codec.dns.DnsQuestion, io.netty.util.concurrent.Promise<java.util.List<T>>, java.lang.Throwable);
descriptor: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
iload 2
aload 3
1: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.dnsQueryLifecycleObserverFactory:()Lio/netty/resolver/dns/DnsQueryLifecycleObserverFactory;
aload 3
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserverFactory.newDnsQueryLifecycleObserver:(Lio/netty/handler/codec/dns/DnsQuestion;)Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
aload 4
aload 5
2: invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
3: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 4 1 nameServerAddrStream Lio/netty/resolver/dns/DnsServerAddressStream;
0 4 2 nameServerAddrStreamIndex I
0 4 3 question Lio/netty/handler/codec/dns/DnsQuestion;
0 4 4 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
0 4 5 cause Ljava/lang/Throwable;
Signature: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;Ljava/lang/Throwable;)V
MethodParameters:
Name Flags
nameServerAddrStream final
nameServerAddrStreamIndex final
question final
promise final
cause
private void query(io.netty.resolver.dns.DnsServerAddressStream, int, io.netty.handler.codec.dns.DnsQuestion, io.netty.resolver.dns.DnsQueryLifecycleObserver, io.netty.util.concurrent.Promise<java.util.List<T>>, java.lang.Throwable);
descriptor: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=10, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iload 2
aload 1
invokeinterface io.netty.resolver.dns.DnsServerAddressStream.size:()I
if_icmpge 1
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.allowedQueries:I
ifeq 1
aload 5
invokeinterface io.netty.util.concurrent.Promise.isCancelled:()Z
ifeq 5
1: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
aload 3
aload 4
2: aload 5
aload 6
3: invokevirtual io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
4: return
5: StackMap locals:
StackMap stack:
aload 0
dup
getfield io.netty.resolver.dns.DnsResolveContext.allowedQueries:I
iconst_1
isub
putfield io.netty.resolver.dns.DnsResolveContext.allowedQueries:I
6: aload 1
invokeinterface io.netty.resolver.dns.DnsServerAddressStream.next:()Ljava/net/InetSocketAddress;
astore 7
start local 7 7: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
getfield io.netty.resolver.dns.DnsNameResolver.ch:Lio/netty/channel/socket/DatagramChannel;
invokeinterface io.netty.channel.socket.DatagramChannel.newPromise:()Lio/netty/channel/ChannelPromise;
astore 8
start local 8 8: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
9: aload 7
aload 3
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
aload 8
10: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
getfield io.netty.resolver.dns.DnsNameResolver.ch:Lio/netty/channel/socket/DatagramChannel;
invokeinterface io.netty.channel.socket.DatagramChannel.eventLoop:()Lio/netty/channel/EventLoop;
invokeinterface io.netty.channel.EventLoop.newPromise:()Lio/netty/util/concurrent/Promise;
11: invokevirtual io.netty.resolver.dns.DnsNameResolver.query0:(Ljava/net/InetSocketAddress;Lio/netty/handler/codec/dns/DnsQuestion;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/channel/ChannelPromise;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;
astore 9
start local 9 12: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.queriesInProgress:Ljava/util/Set;
aload 9
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
13: aload 4
aload 7
aload 8
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryWritten:(Ljava/net/InetSocketAddress;Lio/netty/channel/ChannelFuture;)V
14: aload 9
new io.netty.resolver.dns.DnsResolveContext$3
dup
aload 0
aload 5
aload 4
aload 1
iload 2
aload 3
invokespecial io.netty.resolver.dns.DnsResolveContext$3.<init>:(Lio/netty/resolver/dns/DnsResolveContext;Lio/netty/util/concurrent/Promise;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;)V
invokeinterface io.netty.util.concurrent.Future.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Future;
pop
15: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 16 1 nameServerAddrStream Lio/netty/resolver/dns/DnsServerAddressStream;
0 16 2 nameServerAddrStreamIndex I
0 16 3 question Lio/netty/handler/codec/dns/DnsQuestion;
0 16 4 queryLifecycleObserver Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
0 16 5 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
0 16 6 cause Ljava/lang/Throwable;
7 16 7 nameServerAddr Ljava/net/InetSocketAddress;
8 16 8 writePromise Lio/netty/channel/ChannelPromise;
12 16 9 f Lio/netty/util/concurrent/Future<Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;>;
Signature: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;Ljava/lang/Throwable;)V
MethodParameters:
Name Flags
nameServerAddrStream final
nameServerAddrStreamIndex final
question final
queryLifecycleObserver final
promise final
cause final
private void onResponse(io.netty.resolver.dns.DnsServerAddressStream, int, io.netty.handler.codec.dns.DnsQuestion, io.netty.channel.AddressedEnvelope<io.netty.handler.codec.dns.DnsResponse, java.net.InetSocketAddress>, io.netty.resolver.dns.DnsQueryLifecycleObserver, io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=15, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 4
invokeinterface io.netty.channel.AddressedEnvelope.content:()Ljava/lang/Object;
checkcast io.netty.handler.codec.dns.DnsResponse
astore 7
start local 7 1: aload 7
invokeinterface io.netty.handler.codec.dns.DnsResponse.code:()Lio/netty/handler/codec/dns/DnsResponseCode;
astore 8
start local 8 2: aload 8
getstatic io.netty.handler.codec.dns.DnsResponseCode.NOERROR:Lio/netty/handler/codec/dns/DnsResponseCode;
if_acmpne 22
3: aload 0
aload 3
aload 4
aload 5
aload 6
invokevirtual io.netty.resolver.dns.DnsResolveContext.handleRedirect:(Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)Z
ifeq 6
4: aload 4
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
5: return
6: StackMap locals: io.netty.handler.codec.dns.DnsResponse io.netty.handler.codec.dns.DnsResponseCode
StackMap stack:
aload 3
invokeinterface io.netty.handler.codec.dns.DnsQuestion.type:()Lio/netty/handler/codec/dns/DnsRecordType;
astore 9
start local 9 7: aload 9
getstatic io.netty.handler.codec.dns.DnsRecordType.CNAME:Lio/netty/handler/codec/dns/DnsRecordType;
if_acmpne 11
8: aload 0
aload 3
aload 4
invokeinterface io.netty.channel.AddressedEnvelope.content:()Ljava/lang/Object;
checkcast io.netty.handler.codec.dns.DnsResponse
invokestatic io.netty.resolver.dns.DnsResolveContext.buildAliasMap:(Lio/netty/handler/codec/dns/DnsResponse;)Ljava/util/Map;
aload 5
aload 6
invokevirtual io.netty.resolver.dns.DnsResolveContext.onResponseCNAME:(Lio/netty/handler/codec/dns/DnsQuestion;Ljava/util/Map;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
9: aload 4
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
10: return
11: StackMap locals: io.netty.handler.codec.dns.DnsRecordType
StackMap stack:
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.expectedTypes:[Lio/netty/handler/codec/dns/DnsRecordType;
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 18
StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.resolver.dns.DnsServerAddressStream int io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse io.netty.handler.codec.dns.DnsResponseCode io.netty.handler.codec.dns.DnsRecordType top int int io.netty.handler.codec.dns.DnsRecordType[]
StackMap stack:
12: aload 13
iload 11
aaload
astore 10
start local 10 13: aload 9
aload 10
if_acmpne 17
14: aload 0
aload 3
aload 4
aload 5
aload 6
invokevirtual io.netty.resolver.dns.DnsResolveContext.onExpectedResponse:(Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
15: aload 4
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
16: return
end local 10 17: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
18: iload 11
iload 12
if_icmplt 12
19: aload 5
getstatic io.netty.resolver.dns.DnsResolveContext.UNRECOGNIZED_TYPE_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryFailed:(Ljava/lang/Throwable;)V
20: aload 4
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
21: return
end local 9 22: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.resolver.dns.DnsServerAddressStream int io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse io.netty.handler.codec.dns.DnsResponseCode
StackMap stack:
aload 8
getstatic io.netty.handler.codec.dns.DnsResponseCode.NXDOMAIN:Lio/netty/handler/codec/dns/DnsResponseCode;
if_acmpeq 27
23: aload 0
aload 1
iload 2
iconst_1
iadd
aload 3
24: aload 5
aload 8
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryNoAnswer:(Lio/netty/handler/codec/dns/DnsResponseCode;)Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
aload 6
aconst_null
25: invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
26: goto 32
27: StackMap locals:
StackMap stack:
aload 5
getstatic io.netty.resolver.dns.DnsResolveContext.NXDOMAIN_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryFailed:(Ljava/lang/Throwable;)V
end local 8 end local 7 28: goto 32
StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.resolver.dns.DnsServerAddressStream int io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise
StackMap stack: java.lang.Throwable
29: astore 14
30: aload 4
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
31: aload 14
athrow
32: StackMap locals:
StackMap stack:
aload 4
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
33: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 34 1 nameServerAddrStream Lio/netty/resolver/dns/DnsServerAddressStream;
0 34 2 nameServerAddrStreamIndex I
0 34 3 question Lio/netty/handler/codec/dns/DnsQuestion;
0 34 4 envelope Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;
0 34 5 queryLifecycleObserver Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
0 34 6 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 28 7 res Lio/netty/handler/codec/dns/DnsResponse;
2 28 8 code Lio/netty/handler/codec/dns/DnsResponseCode;
7 22 9 type Lio/netty/handler/codec/dns/DnsRecordType;
13 17 10 expectedType Lio/netty/handler/codec/dns/DnsRecordType;
Exception table:
from to target type
0 4 29 any
6 9 29 any
11 15 29 any
17 20 29 any
22 29 29 any
Signature: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
nameServerAddrStream final
nameServerAddrStreamIndex final
question final
envelope
queryLifecycleObserver final
promise
private boolean handleRedirect(io.netty.handler.codec.dns.DnsQuestion, io.netty.channel.AddressedEnvelope<io.netty.handler.codec.dns.DnsResponse, java.net.InetSocketAddress>, io.netty.resolver.dns.DnsQueryLifecycleObserver, io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokeinterface io.netty.channel.AddressedEnvelope.content:()Ljava/lang/Object;
checkcast io.netty.handler.codec.dns.DnsResponse
astore 5
start local 5 1: aload 5
getstatic io.netty.handler.codec.dns.DnsSection.ANSWER:Lio/netty/handler/codec/dns/DnsSection;
invokeinterface io.netty.handler.codec.dns.DnsResponse.count:(Lio/netty/handler/codec/dns/DnsSection;)I
ifne 28
2: aload 1
invokeinterface io.netty.handler.codec.dns.DnsQuestion.name:()Ljava/lang/String;
aload 5
invokestatic io.netty.resolver.dns.DnsResolveContext.extractAuthoritativeNameServers:(Ljava/lang/String;Lio/netty/handler/codec/dns/DnsResponse;)Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServerList;
astore 6
start local 6 3: aload 6
ifnull 28
4: new java.util.ArrayList
dup
aload 6
invokevirtual io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 7
start local 7 5: aload 5
getstatic io.netty.handler.codec.dns.DnsSection.ADDITIONAL:Lio/netty/handler/codec/dns/DnsSection;
invokeinterface io.netty.handler.codec.dns.DnsResponse.count:(Lio/netty/handler/codec/dns/DnsSection;)I
istore 8
start local 8 6: iconst_0
istore 9
start local 9 7: goto 22
8: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList java.util.List int int
StackMap stack:
aload 5
getstatic io.netty.handler.codec.dns.DnsSection.ADDITIONAL:Lio/netty/handler/codec/dns/DnsSection;
iload 9
invokeinterface io.netty.handler.codec.dns.DnsResponse.recordAt:(Lio/netty/handler/codec/dns/DnsSection;I)Lio/netty/handler/codec/dns/DnsRecord;
astore 10
start local 10 9: aload 10
invokeinterface io.netty.handler.codec.dns.DnsRecord.type:()Lio/netty/handler/codec/dns/DnsRecordType;
getstatic io.netty.handler.codec.dns.DnsRecordType.A:Lio/netty/handler/codec/dns/DnsRecordType;
if_acmpne 10
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.supportsARecords:()Z
ifeq 21
10: StackMap locals: io.netty.handler.codec.dns.DnsRecord
StackMap stack:
aload 10
invokeinterface io.netty.handler.codec.dns.DnsRecord.type:()Lio/netty/handler/codec/dns/DnsRecordType;
getstatic io.netty.handler.codec.dns.DnsRecordType.AAAA:Lio/netty/handler/codec/dns/DnsRecordType;
if_acmpne 12
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.supportsAAAARecords:()Z
ifne 12
11: goto 21
12: StackMap locals:
StackMap stack:
aload 10
invokeinterface io.netty.handler.codec.dns.DnsRecord.name:()Ljava/lang/String;
astore 11
start local 11 13: aload 6
aload 11
invokevirtual io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList.remove:(Ljava/lang/String;)Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServer;
astore 12
start local 12 14: aload 12
ifnonnull 16
15: goto 21
16: StackMap locals: java.lang.String io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer
StackMap stack:
aload 10
aload 11
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.isDecodeIdn:()Z
invokestatic io.netty.resolver.dns.DnsAddressDecoder.decodeAddress:(Lio/netty/handler/codec/dns/DnsRecord;Ljava/lang/String;Z)Ljava/net/InetAddress;
astore 13
start local 13 17: aload 13
ifnonnull 19
18: goto 21
19: StackMap locals: java.net.InetAddress
StackMap stack:
aload 7
new java.net.InetSocketAddress
dup
aload 13
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
aload 13
invokevirtual io.netty.resolver.dns.DnsNameResolver.dnsRedirectPort:(Ljava/net/InetAddress;)I
invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
20: aload 0
aload 12
aload 13
aload 10
invokeinterface io.netty.handler.codec.dns.DnsRecord.timeToLive:()J
invokevirtual io.netty.resolver.dns.DnsResolveContext.addNameServerToCache:(Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServer;Ljava/net/InetAddress;J)V
end local 13 end local 12 end local 11 end local 10 21: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList java.util.List int int
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
22: iload 9
iload 8
if_icmplt 8
end local 9 23: aload 7
invokeinterface java.util.List.isEmpty:()Z
ifne 28
24: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
aload 7
invokevirtual io.netty.resolver.dns.DnsNameResolver.uncachedRedirectDnsServerStream:(Ljava/util/List;)Lio/netty/resolver/dns/DnsServerAddressStream;
iconst_0
aload 1
25: aload 3
aload 7
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryRedirected:(Ljava/util/List;)Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
aload 4
aconst_null
26: invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
27: iconst_1
ireturn
end local 8 end local 7 end local 6 28: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse
StackMap stack:
iconst_0
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 29 1 question Lio/netty/handler/codec/dns/DnsQuestion;
0 29 2 envelope Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;
0 29 3 queryLifecycleObserver Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
0 29 4 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 29 5 res Lio/netty/handler/codec/dns/DnsResponse;
3 28 6 serverNames Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServerList;
5 28 7 nameServers Ljava/util/List<Ljava/net/InetSocketAddress;>;
6 28 8 additionalCount I
7 23 9 i I
9 21 10 r Lio/netty/handler/codec/dns/DnsRecord;
13 21 11 recordName Ljava/lang/String;
14 21 12 authoritativeNameServer Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServer;
17 21 13 resolved Ljava/net/InetAddress;
Signature: (Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)Z
MethodParameters:
Name Flags
question
envelope
queryLifecycleObserver final
promise
private static io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList extractAuthoritativeNameServers(java.lang.String, io.netty.handler.codec.dns.DnsResponse);
descriptor: (Ljava/lang/String;Lio/netty/handler/codec/dns/DnsResponse;)Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServerList;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
getstatic io.netty.handler.codec.dns.DnsSection.AUTHORITY:Lio/netty/handler/codec/dns/DnsSection;
invokeinterface io.netty.handler.codec.dns.DnsResponse.count:(Lio/netty/handler/codec/dns/DnsSection;)I
istore 2
start local 2 1: iload 2
ifne 3
2: aconst_null
areturn
3: StackMap locals: int
StackMap stack:
new io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList
dup
aload 0
invokespecial io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList.<init>:(Ljava/lang/String;)V
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 8
6: StackMap locals: io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList int
StackMap stack:
aload 3
aload 1
getstatic io.netty.handler.codec.dns.DnsSection.AUTHORITY:Lio/netty/handler/codec/dns/DnsSection;
iload 4
invokeinterface io.netty.handler.codec.dns.DnsResponse.recordAt:(Lio/netty/handler/codec/dns/DnsSection;I)Lio/netty/handler/codec/dns/DnsRecord;
invokevirtual io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList.add:(Lio/netty/handler/codec/dns/DnsRecord;)V
7: iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 2
if_icmplt 6
end local 4 9: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 questionName Ljava/lang/String;
0 10 1 res Lio/netty/handler/codec/dns/DnsResponse;
1 10 2 authorityCount I
4 10 3 serverNames Lio/netty/resolver/dns/DnsResolveContext$AuthoritativeNameServerList;
5 9 4 i I
MethodParameters:
Name Flags
questionName
res
private void onExpectedResponse(io.netty.handler.codec.dns.DnsQuestion, io.netty.channel.AddressedEnvelope<io.netty.handler.codec.dns.DnsResponse, java.net.InetSocketAddress>, io.netty.resolver.dns.DnsQueryLifecycleObserver, io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=17, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokeinterface io.netty.channel.AddressedEnvelope.content:()Ljava/lang/Object;
checkcast io.netty.handler.codec.dns.DnsResponse
astore 5
start local 5 1: aload 5
invokestatic io.netty.resolver.dns.DnsResolveContext.buildAliasMap:(Lio/netty/handler/codec/dns/DnsResponse;)Ljava/util/Map;
astore 6
start local 6 2: aload 5
getstatic io.netty.handler.codec.dns.DnsSection.ANSWER:Lio/netty/handler/codec/dns/DnsSection;
invokeinterface io.netty.handler.codec.dns.DnsResponse.count:(Lio/netty/handler/codec/dns/DnsSection;)I
istore 7
start local 7 3: iconst_0
istore 8
start local 8 4: iconst_0
istore 9
start local 9 5: goto 37
6: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse java.util.Map int int int
StackMap stack:
aload 5
getstatic io.netty.handler.codec.dns.DnsSection.ANSWER:Lio/netty/handler/codec/dns/DnsSection;
iload 9
invokeinterface io.netty.handler.codec.dns.DnsResponse.recordAt:(Lio/netty/handler/codec/dns/DnsSection;I)Lio/netty/handler/codec/dns/DnsRecord;
astore 10
start local 10 7: aload 10
invokeinterface io.netty.handler.codec.dns.DnsRecord.type:()Lio/netty/handler/codec/dns/DnsRecordType;
astore 11
start local 11 8: iconst_0
istore 12
start local 12 9: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.expectedTypes:[Lio/netty/handler/codec/dns/DnsRecordType;
dup
astore 16
arraylength
istore 15
iconst_0
istore 14
goto 15
StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse java.util.Map int int int io.netty.handler.codec.dns.DnsRecord io.netty.handler.codec.dns.DnsRecordType int top int int io.netty.handler.codec.dns.DnsRecordType[]
StackMap stack:
10: aload 16
iload 14
aaload
astore 13
start local 13 11: aload 11
aload 13
if_acmpne 14
12: iconst_1
istore 12
13: goto 16
end local 13 14: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
15: iload 14
iload 15
if_icmplt 10
16: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse java.util.Map int int int io.netty.handler.codec.dns.DnsRecord io.netty.handler.codec.dns.DnsRecordType int
StackMap stack:
iload 12
ifne 18
17: goto 36
18: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.netty.handler.codec.dns.DnsQuestion.name:()Ljava/lang/String;
getstatic java.util.Locale.US:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 13
start local 13 19: aload 10
invokeinterface io.netty.handler.codec.dns.DnsRecord.name:()Ljava/lang/String;
getstatic java.util.Locale.US:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 14
start local 14 20: aload 14
aload 13
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 28
21: aload 13
astore 15
start local 15 22: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 6
aload 15
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 15
23: aload 14
aload 15
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
24: goto 26
25: StackMap locals:
StackMap stack:
aload 15
ifnonnull 22
26: StackMap locals:
StackMap stack:
aload 15
ifnonnull 28
27: goto 36
end local 15 28: StackMap locals:
StackMap stack:
aload 0
aload 10
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
getfield io.netty.resolver.dns.DnsNameResolver.ch:Lio/netty/channel/socket/DatagramChannel;
invokeinterface io.netty.channel.socket.DatagramChannel.eventLoop:()Lio/netty/channel/EventLoop;
invokevirtual io.netty.resolver.dns.DnsResolveContext.convertRecord:(Lio/netty/handler/codec/dns/DnsRecord;Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/channel/EventLoop;)Ljava/lang/Object;
astore 15
start local 15 29: aload 15
ifnonnull 31
30: goto 36
31: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.finalResult:Ljava/util/List;
ifnonnull 33
32: aload 0
new java.util.ArrayList
dup
bipush 8
invokespecial java.util.ArrayList.<init>:(I)V
putfield io.netty.resolver.dns.DnsResolveContext.finalResult:Ljava/util/List;
33: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.finalResult:Ljava/util/List;
aload 15
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
34: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
aload 10
aload 15
invokevirtual io.netty.resolver.dns.DnsResolveContext.cache:(Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/handler/codec/dns/DnsRecord;Ljava/lang/Object;)V
35: iconst_1
istore 8
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 36: StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion io.netty.channel.AddressedEnvelope io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.handler.codec.dns.DnsResponse java.util.Map int int int
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
37: iload 9
iload 7
if_icmplt 6
end local 9 38: aload 6
invokeinterface java.util.Map.isEmpty:()Z
ifeq 44
39: iload 8
ifeq 42
40: aload 3
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.querySucceed:()V
41: return
42: StackMap locals:
StackMap stack:
aload 3
getstatic io.netty.resolver.dns.DnsResolveContext.NO_MATCHING_RECORD_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryFailed:(Ljava/lang/Throwable;)V
43: goto 48
44: StackMap locals:
StackMap stack:
aload 3
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.querySucceed:()V
45: aload 0
aload 1
aload 6
46: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.parent:Lio/netty/resolver/dns/DnsNameResolver;
invokevirtual io.netty.resolver.dns.DnsNameResolver.dnsQueryLifecycleObserverFactory:()Lio/netty/resolver/dns/DnsQueryLifecycleObserverFactory;
aload 1
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserverFactory.newDnsQueryLifecycleObserver:(Lio/netty/handler/codec/dns/DnsQuestion;)Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
aload 4
47: invokevirtual io.netty.resolver.dns.DnsResolveContext.onResponseCNAME:(Lio/netty/handler/codec/dns/DnsQuestion;Ljava/util/Map;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
48: StackMap locals:
StackMap stack:
return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 49 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 49 1 question Lio/netty/handler/codec/dns/DnsQuestion;
0 49 2 envelope Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;
0 49 3 queryLifecycleObserver Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
0 49 4 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 49 5 response Lio/netty/handler/codec/dns/DnsResponse;
2 49 6 cnames Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
3 49 7 answerCount I
4 49 8 found Z
5 38 9 i I
7 36 10 r Lio/netty/handler/codec/dns/DnsRecord;
8 36 11 type Lio/netty/handler/codec/dns/DnsRecordType;
9 36 12 matches Z
11 14 13 expectedType Lio/netty/handler/codec/dns/DnsRecordType;
19 36 13 questionName Ljava/lang/String;
20 36 14 recordName Ljava/lang/String;
22 28 15 resolved Ljava/lang/String;
29 36 15 converted TT;
Signature: (Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
question
envelope
queryLifecycleObserver final
promise
private void onResponseCNAME(io.netty.handler.codec.dns.DnsQuestion, java.util.Map<java.lang.String, java.lang.String>, io.netty.resolver.dns.DnsQueryLifecycleObserver, io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Lio/netty/handler/codec/dns/DnsQuestion;Ljava/util/Map;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokeinterface io.netty.handler.codec.dns.DnsQuestion.name:()Ljava/lang/String;
getstatic java.util.Locale.US:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 5
start local 5 1: iconst_0
istore 6
start local 6 2: goto 7
3: StackMap locals: java.lang.String int
StackMap stack:
aload 2
aload 5
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 4: aload 7
ifnull 8
5: iconst_1
istore 6
6: aload 7
astore 5
end local 7 7: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Map.isEmpty:()Z
ifeq 3
8: StackMap locals:
StackMap stack:
iload 6
ifeq 11
9: aload 0
aload 1
aload 5
aload 3
aload 4
invokevirtual io.netty.resolver.dns.DnsResolveContext.followCname:(Lio/netty/handler/codec/dns/DnsQuestion;Ljava/lang/String;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
10: goto 12
11: StackMap locals:
StackMap stack:
aload 3
getstatic io.netty.resolver.dns.DnsResolveContext.CNAME_NOT_FOUND_QUERY_FAILED_EXCEPTION:Ljava/lang/RuntimeException;
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryFailed:(Ljava/lang/Throwable;)V
12: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 13 1 question Lio/netty/handler/codec/dns/DnsQuestion;
0 13 2 cnames Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
0 13 3 queryLifecycleObserver Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
0 13 4 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 13 5 resolved Ljava/lang/String;
2 13 6 found Z
4 7 7 next Ljava/lang/String;
Signature: (Lio/netty/handler/codec/dns/DnsQuestion;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
question
cnames
queryLifecycleObserver final
promise
private static java.util.Map<java.lang.String, java.lang.String> buildAliasMap(io.netty.handler.codec.dns.DnsResponse);
descriptor: (Lio/netty/handler/codec/dns/DnsResponse;)Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=1
start local 0 0: aload 0
getstatic io.netty.handler.codec.dns.DnsSection.ANSWER:Lio/netty/handler/codec/dns/DnsSection;
invokeinterface io.netty.handler.codec.dns.DnsResponse.count:(Lio/netty/handler/codec/dns/DnsSection;)I
istore 1
start local 1 1: aconst_null
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 18
4: StackMap locals: int java.util.Map int
StackMap stack:
aload 0
getstatic io.netty.handler.codec.dns.DnsSection.ANSWER:Lio/netty/handler/codec/dns/DnsSection;
iload 3
invokeinterface io.netty.handler.codec.dns.DnsResponse.recordAt:(Lio/netty/handler/codec/dns/DnsSection;I)Lio/netty/handler/codec/dns/DnsRecord;
astore 4
start local 4 5: aload 4
invokeinterface io.netty.handler.codec.dns.DnsRecord.type:()Lio/netty/handler/codec/dns/DnsRecordType;
astore 5
start local 5 6: aload 5
getstatic io.netty.handler.codec.dns.DnsRecordType.CNAME:Lio/netty/handler/codec/dns/DnsRecordType;
if_acmpeq 8
7: goto 17
8: StackMap locals: io.netty.handler.codec.dns.DnsRecord io.netty.handler.codec.dns.DnsRecordType
StackMap stack:
aload 4
instanceof io.netty.handler.codec.dns.DnsRawRecord
ifne 10
9: goto 17
10: StackMap locals:
StackMap stack:
aload 4
checkcast io.netty.buffer.ByteBufHolder
invokeinterface io.netty.buffer.ByteBufHolder.content:()Lio/netty/buffer/ByteBuf;
astore 6
start local 6 11: aload 6
invokestatic io.netty.resolver.dns.DnsResolveContext.decodeDomainName:(Lio/netty/buffer/ByteBuf;)Ljava/lang/String;
astore 7
start local 7 12: aload 7
ifnonnull 14
13: goto 17
14: StackMap locals: io.netty.buffer.ByteBuf java.lang.String
StackMap stack:
aload 2
ifnonnull 16
15: new java.util.HashMap
dup
bipush 8
iload 1
invokestatic java.lang.Math.min:(II)I
invokespecial java.util.HashMap.<init>:(I)V
astore 2
16: StackMap locals:
StackMap stack:
aload 2
aload 4
invokeinterface io.netty.handler.codec.dns.DnsRecord.name:()Ljava/lang/String;
getstatic java.util.Locale.US:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
aload 7
getstatic java.util.Locale.US:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 7 end local 6 end local 5 end local 4 17: StackMap locals: io.netty.handler.codec.dns.DnsResponse int java.util.Map int
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
18: iload 3
iload 1
if_icmplt 4
end local 3 19: aload 2
ifnull 20
aload 2
goto 21
StackMap locals:
StackMap stack:
20: invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
StackMap locals:
StackMap stack: java.util.Map
21: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 response Lio/netty/handler/codec/dns/DnsResponse;
1 22 1 answerCount I
2 22 2 cnames Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
3 19 3 i I
5 17 4 r Lio/netty/handler/codec/dns/DnsRecord;
6 17 5 type Lio/netty/handler/codec/dns/DnsRecordType;
11 17 6 recordContent Lio/netty/buffer/ByteBuf;
12 17 7 domainName Ljava/lang/String;
Signature: (Lio/netty/handler/codec/dns/DnsResponse;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
MethodParameters:
Name Flags
response
private void tryToFinishResolve(io.netty.resolver.dns.DnsServerAddressStream, int, io.netty.handler.codec.dns.DnsQuestion, io.netty.resolver.dns.DnsQueryLifecycleObserver, io.netty.util.concurrent.Promise<java.util.List<T>>, java.lang.Throwable);
descriptor: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.queriesInProgress:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 3
1: aload 4
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.allowedQueries:I
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryCancelled:(I)V
2: return
3: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.finalResult:Ljava/util/List;
ifnonnull 17
4: iload 2
aload 1
invokeinterface io.netty.resolver.dns.DnsServerAddressStream.size:()I
if_icmpge 12
5: aload 4
getstatic io.netty.resolver.dns.NoopDnsQueryLifecycleObserver.INSTANCE:Lio/netty/resolver/dns/NoopDnsQueryLifecycleObserver;
if_acmpne 8
6: aload 0
aload 1
iload 2
iconst_1
iadd
aload 3
aload 5
aload 6
invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
7: goto 11
8: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
iconst_1
iadd
aload 3
aload 4
9: aload 5
aload 6
10: invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
11: StackMap locals:
StackMap stack:
return
12: StackMap locals:
StackMap stack:
aload 4
getstatic io.netty.resolver.dns.DnsResolveContext.NAME_SERVERS_EXHAUSTED_EXCEPTION:Ljava/lang/RuntimeException;
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryFailed:(Ljava/lang/Throwable;)V
13: aload 6
ifnonnull 18
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.triedCNAME:Z
ifne 18
14: aload 0
iconst_1
putfield io.netty.resolver.dns.DnsResolveContext.triedCNAME:Z
15: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
getstatic io.netty.handler.codec.dns.DnsRecordType.CNAME:Lio/netty/handler/codec/dns/DnsRecordType;
aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
invokevirtual io.netty.resolver.dns.DnsResolveContext.getNameServers:(Ljava/lang/String;)Lio/netty/resolver/dns/DnsServerAddressStream;
aload 5
invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;Lio/netty/resolver/dns/DnsServerAddressStream;Lio/netty/util/concurrent/Promise;)Z
pop
16: return
17: StackMap locals:
StackMap stack:
aload 4
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.allowedQueries:I
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryCancelled:(I)V
18: StackMap locals:
StackMap stack:
aload 0
aload 5
aload 6
invokevirtual io.netty.resolver.dns.DnsResolveContext.finishResolve:(Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
19: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 20 1 nameServerAddrStream Lio/netty/resolver/dns/DnsServerAddressStream;
0 20 2 nameServerAddrStreamIndex I
0 20 3 question Lio/netty/handler/codec/dns/DnsQuestion;
0 20 4 queryLifecycleObserver Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
0 20 5 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
0 20 6 cause Ljava/lang/Throwable;
Signature: (Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;Ljava/lang/Throwable;)V
MethodParameters:
Name Flags
nameServerAddrStream final
nameServerAddrStreamIndex final
question final
queryLifecycleObserver final
promise final
cause final
private void finishResolve(io.netty.util.concurrent.Promise<java.util.List<T>>, java.lang.Throwable);
descriptor: (Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.queriesInProgress:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 8
1: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.queriesInProgress:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
start local 3 2: goto 7
3: StackMap locals: java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.netty.util.concurrent.Future
astore 4
start local 4 4: aload 3
invokeinterface java.util.Iterator.remove:()V
5: aload 4
iconst_0
invokeinterface io.netty.util.concurrent.Future.cancel:(Z)Z
ifne 7
6: aload 4
getstatic io.netty.resolver.dns.DnsResolveContext.RELEASE_RESPONSE:Lio/netty/util/concurrent/FutureListener;
invokeinterface io.netty.util.concurrent.Future.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Future;
pop
end local 4 7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
end local 3 8: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.finalResult:Ljava/util/List;
ifnull 11
9: aload 1
aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.finalResult:Ljava/util/List;
invokevirtual io.netty.resolver.dns.DnsResolveContext.filterResults:(Ljava/util/List;)Ljava/util/List;
invokestatic io.netty.resolver.dns.DnsNameResolver.trySuccess:(Lio/netty/util/concurrent/Promise;Ljava/lang/Object;)V
10: return
11: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.maxAllowedQueries:I
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.allowedQueries:I
isub
istore 3
start local 3 12: new java.lang.StringBuilder
dup
bipush 64
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 4
start local 4 13: aload 4
ldc "failed to resolve '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 39
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
14: iload 3
iconst_1
if_icmple 23
15: iload 3
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.maxAllowedQueries:I
if_icmpge 20
16: aload 4
ldc " after "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
17: iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
18: ldc " queries "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
19: goto 23
20: StackMap locals: int java.lang.StringBuilder
StackMap stack:
aload 4
ldc ". Exceeded max queries per resolve "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: aload 0
getfield io.netty.resolver.dns.DnsResolveContext.maxAllowedQueries:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
22: bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
23: StackMap locals:
StackMap stack:
new java.net.UnknownHostException
dup
aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
astore 5
start local 5 24: aload 2
ifnonnull 27
25: aload 0
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.hostname:Ljava/lang/String;
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.additionals:[Lio/netty/handler/codec/dns/DnsRecord;
aload 5
invokevirtual io.netty.resolver.dns.DnsResolveContext.cache:(Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Ljava/net/UnknownHostException;)V
26: goto 28
27: StackMap locals: java.net.UnknownHostException
StackMap stack:
aload 5
aload 2
invokevirtual java.net.UnknownHostException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
28: StackMap locals:
StackMap stack:
aload 1
aload 5
invokeinterface io.netty.util.concurrent.Promise.tryFailure:(Ljava/lang/Throwable;)Z
pop
29: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 30 1 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
0 30 2 cause Ljava/lang/Throwable;
2 8 3 i Ljava/util/Iterator<Lio/netty/util/concurrent/Future<Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;>;>;
4 7 4 f Lio/netty/util/concurrent/Future<Lio/netty/channel/AddressedEnvelope<Lio/netty/handler/codec/dns/DnsResponse;Ljava/net/InetSocketAddress;>;>;
12 30 3 tries I
13 30 4 buf Ljava/lang/StringBuilder;
24 30 5 unknownHostException Ljava/net/UnknownHostException;
Signature: (Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;Ljava/lang/Throwable;)V
MethodParameters:
Name Flags
promise
cause
static java.lang.String decodeDomainName(io.netty.buffer.ByteBuf);
descriptor: (Lio/netty/buffer/ByteBuf;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.buffer.ByteBuf.markReaderIndex:()Lio/netty/buffer/ByteBuf;
pop
1: aload 0
invokestatic io.netty.handler.codec.dns.DefaultDnsRecordDecoder.decodeName:(Lio/netty/buffer/ByteBuf;)Ljava/lang/String;
astore 2
2: aload 0
invokevirtual io.netty.buffer.ByteBuf.resetReaderIndex:()Lio/netty/buffer/ByteBuf;
pop
3: aload 2
areturn
4: StackMap locals:
StackMap stack: io.netty.handler.codec.CorruptedFrameException
pop
5: aload 0
invokevirtual io.netty.buffer.ByteBuf.resetReaderIndex:()Lio/netty/buffer/ByteBuf;
pop
6: aconst_null
areturn
7: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
8: aload 0
invokevirtual io.netty.buffer.ByteBuf.resetReaderIndex:()Lio/netty/buffer/ByteBuf;
pop
9: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 in Lio/netty/buffer/ByteBuf;
Exception table:
from to target type
1 2 4 Class io.netty.handler.codec.CorruptedFrameException
1 2 7 any
4 5 7 any
MethodParameters:
Name Flags
in
private io.netty.resolver.dns.DnsServerAddressStream getNameServers(java.lang.String);
descriptor: (Ljava/lang/String;)Lio/netty/resolver/dns/DnsServerAddressStream;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.netty.resolver.dns.DnsResolveContext.getNameServersFromCache:(Ljava/lang/String;)Lio/netty/resolver/dns/DnsServerAddressStream;
astore 2
start local 2 1: aload 2
ifnonnull 2
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.nameServerAddrs:Lio/netty/resolver/dns/DnsServerAddressStream;
invokeinterface io.netty.resolver.dns.DnsServerAddressStream.duplicate:()Lio/netty/resolver/dns/DnsServerAddressStream;
goto 3
StackMap locals: io.netty.resolver.dns.DnsServerAddressStream
StackMap stack:
2: aload 2
StackMap locals:
StackMap stack: io.netty.resolver.dns.DnsServerAddressStream
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 4 1 hostname Ljava/lang/String;
1 4 2 stream Lio/netty/resolver/dns/DnsServerAddressStream;
MethodParameters:
Name Flags
hostname
private void followCname(io.netty.handler.codec.dns.DnsQuestion, java.lang.String, io.netty.resolver.dns.DnsQueryLifecycleObserver, io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Lio/netty/handler/codec/dns/DnsQuestion;Ljava/lang/String;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 2
invokevirtual io.netty.resolver.dns.DnsResolveContext.getNameServers:(Ljava/lang/String;)Lio/netty/resolver/dns/DnsServerAddressStream;
astore 5
start local 5 1: aload 0
aload 2
aload 1
invokeinterface io.netty.handler.codec.dns.DnsQuestion.type:()Lio/netty/handler/codec/dns/DnsRecordType;
invokevirtual io.netty.resolver.dns.DnsResolveContext.newQuestion:(Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;)Lio/netty/handler/codec/dns/DnsQuestion;
astore 6
start local 6 2: goto 7
end local 6 StackMap locals: io.netty.resolver.dns.DnsResolveContext io.netty.handler.codec.dns.DnsQuestion java.lang.String io.netty.resolver.dns.DnsQueryLifecycleObserver io.netty.util.concurrent.Promise io.netty.resolver.dns.DnsServerAddressStream
StackMap stack: java.lang.Throwable
3: astore 7
start local 7 4: aload 3
aload 7
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryFailed:(Ljava/lang/Throwable;)V
5: aload 7
invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
6: return
end local 7 start local 6 7: StackMap locals: io.netty.handler.codec.dns.DnsQuestion
StackMap stack:
aload 0
aload 5
iconst_0
aload 6
aload 3
aload 6
invokeinterface io.netty.resolver.dns.DnsQueryLifecycleObserver.queryCNAMEd:(Lio/netty/handler/codec/dns/DnsQuestion;)Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
aload 4
aconst_null
invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
8: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 9 1 question Lio/netty/handler/codec/dns/DnsQuestion;
0 9 2 cname Ljava/lang/String;
0 9 3 queryLifecycleObserver Lio/netty/resolver/dns/DnsQueryLifecycleObserver;
0 9 4 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 9 5 stream Lio/netty/resolver/dns/DnsServerAddressStream;
2 3 6 cnameQuestion Lio/netty/handler/codec/dns/DnsQuestion;
7 9 6 cnameQuestion Lio/netty/handler/codec/dns/DnsQuestion;
4 7 7 cause Ljava/lang/Throwable;
Exception table:
from to target type
1 2 3 Class java.lang.Throwable
Signature: (Lio/netty/handler/codec/dns/DnsQuestion;Ljava/lang/String;Lio/netty/resolver/dns/DnsQueryLifecycleObserver;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
question
cname
queryLifecycleObserver
promise
private boolean query(java.lang.String, io.netty.handler.codec.dns.DnsRecordType, io.netty.resolver.dns.DnsServerAddressStream, io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;Lio/netty/resolver/dns/DnsServerAddressStream;Lio/netty/util/concurrent/Promise;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
invokevirtual io.netty.resolver.dns.DnsResolveContext.newQuestion:(Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;)Lio/netty/handler/codec/dns/DnsQuestion;
astore 5
start local 5 1: aload 5
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: io.netty.handler.codec.dns.DnsQuestion
StackMap stack:
aload 0
aload 3
iconst_0
aload 5
aload 4
aconst_null
invokevirtual io.netty.resolver.dns.DnsResolveContext.query:(Lio/netty/resolver/dns/DnsServerAddressStream;ILio/netty/handler/codec/dns/DnsQuestion;Lio/netty/util/concurrent/Promise;Ljava/lang/Throwable;)V
4: iconst_1
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 5 1 hostname Ljava/lang/String;
0 5 2 type Lio/netty/handler/codec/dns/DnsRecordType;
0 5 3 dnsServerAddressStream Lio/netty/resolver/dns/DnsServerAddressStream;
0 5 4 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
1 5 5 question Lio/netty/handler/codec/dns/DnsQuestion;
Signature: (Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;Lio/netty/resolver/dns/DnsServerAddressStream;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)Z
MethodParameters:
Name Flags
hostname
type
dnsServerAddressStream
promise
private io.netty.handler.codec.dns.DnsQuestion newQuestion(java.lang.String, io.netty.handler.codec.dns.DnsRecordType);
descriptor: (Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;)Lio/netty/handler/codec/dns/DnsQuestion;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new io.netty.handler.codec.dns.DefaultDnsQuestion
dup
aload 1
aload 2
aload 0
getfield io.netty.resolver.dns.DnsResolveContext.dnsClass:I
invokespecial io.netty.handler.codec.dns.DefaultDnsQuestion.<init>:(Ljava/lang/String;Lio/netty/handler/codec/dns/DnsRecordType;I)V
1: areturn
2: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
pop
3: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/resolver/dns/DnsResolveContext<TT;>;
0 4 1 hostname Ljava/lang/String;
0 4 2 type Lio/netty/handler/codec/dns/DnsRecordType;
Exception table:
from to target type
0 1 2 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
hostname
type
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "DnsResolveContext.java"
NestMembers:
io.netty.resolver.dns.DnsResolveContext$1 io.netty.resolver.dns.DnsResolveContext$2 io.netty.resolver.dns.DnsResolveContext$3 io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList io.netty.resolver.dns.DnsResolveContext$DnsCacheIterable io.netty.resolver.dns.DnsResolveContext$DnsCacheIterable$1 io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException
InnerClasses:
io.netty.resolver.dns.DnsResolveContext$1
io.netty.resolver.dns.DnsResolveContext$2
io.netty.resolver.dns.DnsResolveContext$3
final AuthoritativeNameServer = io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer of io.netty.resolver.dns.DnsResolveContext
private final AuthoritativeNameServerList = io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList of io.netty.resolver.dns.DnsResolveContext
private final DnsCacheIterable = io.netty.resolver.dns.DnsResolveContext$DnsCacheIterable of io.netty.resolver.dns.DnsResolveContext
private final SearchDomainUnknownHostException = io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException of io.netty.resolver.dns.DnsResolveContext