final class io.netty.resolver.dns.InflightNameResolver<T> implements io.netty.resolver.NameResolver<T>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.netty.resolver.dns.InflightNameResolver
super_class: java.lang.Object
{
private final io.netty.util.concurrent.EventExecutor executor;
descriptor: Lio/netty/util/concurrent/EventExecutor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.resolver.NameResolver<T> delegate;
descriptor: Lio/netty/resolver/NameResolver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lio/netty/resolver/NameResolver<TT;>;
private final java.util.concurrent.ConcurrentMap<java.lang.String, io.netty.util.concurrent.Promise<T>> resolvesInProgress;
descriptor: Ljava/util/concurrent/ConcurrentMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<TT;>;>;
private final java.util.concurrent.ConcurrentMap<java.lang.String, io.netty.util.concurrent.Promise<java.util.List<T>>> resolveAllsInProgress;
descriptor: Ljava/util/concurrent/ConcurrentMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;>;
void <init>(io.netty.util.concurrent.EventExecutor, io.netty.resolver.NameResolver<T>, java.util.concurrent.ConcurrentMap<java.lang.String, io.netty.util.concurrent.Promise<T>>, java.util.concurrent.ConcurrentMap<java.lang.String, io.netty.util.concurrent.Promise<java.util.List<T>>>);
descriptor: (Lio/netty/util/concurrent/EventExecutor;Lio/netty/resolver/NameResolver;Ljava/util/concurrent/ConcurrentMap;Ljava/util/concurrent/ConcurrentMap;)V
flags: (0x0000)
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
ldc "executor"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.util.concurrent.EventExecutor
putfield io.netty.resolver.dns.InflightNameResolver.executor:Lio/netty/util/concurrent/EventExecutor;
2: aload 0
aload 2
ldc "delegate"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.resolver.NameResolver
putfield io.netty.resolver.dns.InflightNameResolver.delegate:Lio/netty/resolver/NameResolver;
3: aload 0
aload 3
ldc "resolvesInProgress"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.concurrent.ConcurrentMap
putfield io.netty.resolver.dns.InflightNameResolver.resolvesInProgress:Ljava/util/concurrent/ConcurrentMap;
4: aload 0
aload 4
ldc "resolveAllsInProgress"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.concurrent.ConcurrentMap
putfield io.netty.resolver.dns.InflightNameResolver.resolveAllsInProgress:Ljava/util/concurrent/ConcurrentMap;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
0 6 1 executor Lio/netty/util/concurrent/EventExecutor;
0 6 2 delegate Lio/netty/resolver/NameResolver<TT;>;
0 6 3 resolvesInProgress Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<TT;>;>;
0 6 4 resolveAllsInProgress Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;>;
Signature: (Lio/netty/util/concurrent/EventExecutor;Lio/netty/resolver/NameResolver<TT;>;Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<TT;>;>;Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;>;)V
MethodParameters:
Name Flags
executor
delegate
resolvesInProgress
resolveAllsInProgress
public io.netty.util.concurrent.Future<T> resolve(java.lang.String);
descriptor: (Ljava/lang/String;)Lio/netty/util/concurrent/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield io.netty.resolver.dns.InflightNameResolver.executor:Lio/netty/util/concurrent/EventExecutor;
invokeinterface io.netty.util.concurrent.EventExecutor.newPromise:()Lio/netty/util/concurrent/Promise;
invokevirtual io.netty.resolver.dns.InflightNameResolver.resolve:(Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Promise;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
0 1 1 inetHost Ljava/lang/String;
Signature: (Ljava/lang/String;)Lio/netty/util/concurrent/Future<TT;>;
MethodParameters:
Name Flags
inetHost
public io.netty.util.concurrent.Future<java.util.List<T>> resolveAll(java.lang.String);
descriptor: (Ljava/lang/String;)Lio/netty/util/concurrent/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield io.netty.resolver.dns.InflightNameResolver.executor:Lio/netty/util/concurrent/EventExecutor;
invokeinterface io.netty.util.concurrent.EventExecutor.newPromise:()Lio/netty/util/concurrent/Promise;
invokevirtual io.netty.resolver.dns.InflightNameResolver.resolveAll:(Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Promise;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
0 1 1 inetHost Ljava/lang/String;
Signature: (Ljava/lang/String;)Lio/netty/util/concurrent/Future<Ljava/util/List<TT;>;>;
MethodParameters:
Name Flags
inetHost
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.resolver.dns.InflightNameResolver.delegate:Lio/netty/resolver/NameResolver;
invokeinterface io.netty.resolver.NameResolver.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
public io.netty.util.concurrent.Promise<T> resolve(java.lang.String, io.netty.util.concurrent.Promise<T>);
descriptor: (Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Promise;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield io.netty.resolver.dns.InflightNameResolver.resolvesInProgress:Ljava/util/concurrent/ConcurrentMap;
aload 1
aload 2
iconst_0
invokevirtual io.netty.resolver.dns.InflightNameResolver.resolve:(Ljava/util/concurrent/ConcurrentMap;Ljava/lang/String;Lio/netty/util/concurrent/Promise;Z)Lio/netty/util/concurrent/Promise;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
0 1 1 inetHost Ljava/lang/String;
0 1 2 promise Lio/netty/util/concurrent/Promise<TT;>;
Signature: (Ljava/lang/String;Lio/netty/util/concurrent/Promise<TT;>;)Lio/netty/util/concurrent/Promise<TT;>;
MethodParameters:
Name Flags
inetHost
promise
public io.netty.util.concurrent.Promise<java.util.List<T>> resolveAll(java.lang.String, io.netty.util.concurrent.Promise<java.util.List<T>>);
descriptor: (Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Promise;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield io.netty.resolver.dns.InflightNameResolver.resolveAllsInProgress:Ljava/util/concurrent/ConcurrentMap;
aload 1
aload 2
iconst_1
invokevirtual io.netty.resolver.dns.InflightNameResolver.resolve:(Ljava/util/concurrent/ConcurrentMap;Ljava/lang/String;Lio/netty/util/concurrent/Promise;Z)Lio/netty/util/concurrent/Promise;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
0 1 1 inetHost Ljava/lang/String;
0 1 2 promise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
Signature: (Ljava/lang/String;Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;)Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
MethodParameters:
Name Flags
inetHost
promise
private <U> io.netty.util.concurrent.Promise<U> resolve(java.util.concurrent.ConcurrentMap<java.lang.String, io.netty.util.concurrent.Promise<U>>, java.lang.String, io.netty.util.concurrent.Promise<U>, boolean);
descriptor: (Ljava/util/concurrent/ConcurrentMap;Ljava/lang/String;Lio/netty/util/concurrent/Promise;Z)Lio/netty/util/concurrent/Promise;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 2
aload 3
invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.netty.util.concurrent.Promise
astore 5
start local 5 1: aload 5
ifnull 7
2: aload 5
invokeinterface io.netty.util.concurrent.Promise.isDone:()Z
ifeq 5
3: aload 5
aload 3
invokestatic io.netty.resolver.dns.InflightNameResolver.transferResult:(Lio/netty/util/concurrent/Future;Lio/netty/util/concurrent/Promise;)V
4: goto 24
5: StackMap locals: io.netty.util.concurrent.Promise
StackMap stack:
aload 5
new io.netty.resolver.dns.InflightNameResolver$1
dup
aload 0
aload 3
invokespecial io.netty.resolver.dns.InflightNameResolver$1.<init>:(Lio/netty/resolver/dns/InflightNameResolver;Lio/netty/util/concurrent/Promise;)V
invokeinterface io.netty.util.concurrent.Promise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Promise;
pop
6: goto 24
7: StackMap locals:
StackMap stack:
iload 4
ifeq 11
8: aload 3
astore 6
start local 6 9: aload 0
getfield io.netty.resolver.dns.InflightNameResolver.delegate:Lio/netty/resolver/NameResolver;
aload 2
aload 6
invokeinterface io.netty.resolver.NameResolver.resolveAll:(Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;
pop
end local 6 10: goto 20
11: StackMap locals:
StackMap stack:
aload 3
astore 6
start local 6 12: aload 0
getfield io.netty.resolver.dns.InflightNameResolver.delegate:Lio/netty/resolver/NameResolver;
aload 2
aload 6
invokeinterface io.netty.resolver.NameResolver.resolve:(Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;
pop
end local 6 13: goto 20
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 7
15: aload 3
invokeinterface io.netty.util.concurrent.Promise.isDone:()Z
ifeq 18
16: aload 1
aload 2
invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
17: goto 19
18: StackMap locals: io.netty.resolver.dns.InflightNameResolver java.util.concurrent.ConcurrentMap java.lang.String io.netty.util.concurrent.Promise int io.netty.util.concurrent.Promise top java.lang.Throwable
StackMap stack:
aload 3
new io.netty.resolver.dns.InflightNameResolver$2
dup
aload 0
aload 1
aload 2
invokespecial io.netty.resolver.dns.InflightNameResolver$2.<init>:(Lio/netty/resolver/dns/InflightNameResolver;Ljava/util/concurrent/ConcurrentMap;Ljava/lang/String;)V
invokeinterface io.netty.util.concurrent.Promise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Promise;
pop
19: StackMap locals:
StackMap stack:
aload 7
athrow
20: StackMap locals: io.netty.resolver.dns.InflightNameResolver java.util.concurrent.ConcurrentMap java.lang.String io.netty.util.concurrent.Promise int io.netty.util.concurrent.Promise
StackMap stack:
aload 3
invokeinterface io.netty.util.concurrent.Promise.isDone:()Z
ifeq 23
21: aload 1
aload 2
invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
22: goto 24
23: StackMap locals:
StackMap stack:
aload 3
new io.netty.resolver.dns.InflightNameResolver$2
dup
aload 0
aload 1
aload 2
invokespecial io.netty.resolver.dns.InflightNameResolver$2.<init>:(Lio/netty/resolver/dns/InflightNameResolver;Ljava/util/concurrent/ConcurrentMap;Ljava/lang/String;)V
invokeinterface io.netty.util.concurrent.Promise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Promise;
pop
24: StackMap locals:
StackMap stack:
aload 3
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 25 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
0 25 1 resolveMap Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<TU;>;>;
0 25 2 inetHost Ljava/lang/String;
0 25 3 promise Lio/netty/util/concurrent/Promise<TU;>;
0 25 4 resolveAll Z
1 25 5 earlyPromise Lio/netty/util/concurrent/Promise<TU;>;
9 10 6 castPromise Lio/netty/util/concurrent/Promise<Ljava/util/List<TT;>;>;
12 13 6 castPromise Lio/netty/util/concurrent/Promise<TT;>;
Exception table:
from to target type
7 14 14 any
Signature: <U:Ljava/lang/Object;>(Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/util/concurrent/Promise<TU;>;>;Ljava/lang/String;Lio/netty/util/concurrent/Promise<TU;>;Z)Lio/netty/util/concurrent/Promise<TU;>;
MethodParameters:
Name Flags
resolveMap final
inetHost final
promise final
resolveAll
private static <T> void transferResult(io.netty.util.concurrent.Future<T>, io.netty.util.concurrent.Promise<T>);
descriptor: (Lio/netty/util/concurrent/Future;Lio/netty/util/concurrent/Promise;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface io.netty.util.concurrent.Future.isSuccess:()Z
ifeq 3
1: aload 1
aload 0
invokeinterface io.netty.util.concurrent.Future.getNow:()Ljava/lang/Object;
invokeinterface io.netty.util.concurrent.Promise.trySuccess:(Ljava/lang/Object;)Z
pop
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
aload 0
invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
invokeinterface io.netty.util.concurrent.Promise.tryFailure:(Ljava/lang/Throwable;)Z
pop
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 src Lio/netty/util/concurrent/Future<TT;>;
0 5 1 dst Lio/netty/util/concurrent/Promise<TT;>;
Signature: <T:Ljava/lang/Object;>(Lio/netty/util/concurrent/Future<TT;>;Lio/netty/util/concurrent/Promise<TT;>;)V
MethodParameters:
Name Flags
src
dst
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokestatic io.netty.util.internal.StringUtil.simpleClassName:(Ljava/lang/Object;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield io.netty.resolver.dns.InflightNameResolver.delegate:Lio/netty/resolver/NameResolver;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/resolver/dns/InflightNameResolver<TT;>;
public io.netty.util.concurrent.Future resolve(java.lang.String, io.netty.util.concurrent.Promise);
descriptor: (Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast io.netty.util.concurrent.Promise
invokevirtual io.netty.resolver.dns.InflightNameResolver.resolve:(Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Promise;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.netty.util.concurrent.Future resolveAll(java.lang.String, io.netty.util.concurrent.Promise);
descriptor: (Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast io.netty.util.concurrent.Promise
invokevirtual io.netty.resolver.dns.InflightNameResolver.resolveAll:(Ljava/lang/String;Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Promise;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Lio/netty/resolver/NameResolver<TT;>;
SourceFile: "InflightNameResolver.java"
NestMembers:
io.netty.resolver.dns.InflightNameResolver$1 io.netty.resolver.dns.InflightNameResolver$2
InnerClasses:
io.netty.resolver.dns.InflightNameResolver$1
io.netty.resolver.dns.InflightNameResolver$2