public class org.apache.http.concurrent.BasicFuture<T> implements java.util.concurrent.Future<T>, org.apache.http.concurrent.Cancellable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.http.concurrent.BasicFuture
super_class: java.lang.Object
{
private final org.apache.http.concurrent.FutureCallback<T> callback;
descriptor: Lorg/apache/http/concurrent/FutureCallback;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/apache/http/concurrent/FutureCallback<TT;>;
private volatile boolean completed;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile boolean cancelled;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile T result;
descriptor: Ljava/lang/Object;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: TT;
private volatile java.lang.Exception ex;
descriptor: Ljava/lang/Exception;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
public void <init>(org.apache.http.concurrent.FutureCallback<T>);
descriptor: (Lorg/apache/http/concurrent/FutureCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.apache.http.concurrent.BasicFuture.callback:Lorg/apache/http/concurrent/FutureCallback;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
0 3 1 callback Lorg/apache/http/concurrent/FutureCallback<TT;>;
Signature: (Lorg/apache/http/concurrent/FutureCallback<TT;>;)V
MethodParameters:
Name Flags
callback final
public boolean isCancelled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.http.concurrent.BasicFuture.cancelled:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
public boolean isDone();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.http.concurrent.BasicFuture.completed:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
private T getResult();
descriptor: ()Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.http.concurrent.BasicFuture.ex:Ljava/lang/Exception;
ifnull 2
1: new java.util.concurrent.ExecutionException
dup
aload 0
getfield org.apache.http.concurrent.BasicFuture.ex:Ljava/lang/Exception;
invokespecial java.util.concurrent.ExecutionException.<init>:(Ljava/lang/Throwable;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.concurrent.BasicFuture.cancelled:Z
ifeq 4
3: new java.util.concurrent.CancellationException
dup
invokespecial java.util.concurrent.CancellationException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.concurrent.BasicFuture.result:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
Exceptions:
throws java.util.concurrent.ExecutionException
Signature: ()TT;
public synchronized T get();
descriptor: ()Ljava/lang/Object;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: goto 2
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.wait:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.concurrent.BasicFuture.completed:Z
ifeq 1
3: aload 0
invokevirtual org.apache.http.concurrent.BasicFuture.getResult:()Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
Exceptions:
throws java.lang.InterruptedException, java.util.concurrent.ExecutionException
Signature: ()TT;
public synchronized T get(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=10, args_size=3
start local 0 start local 1 start local 3 0: aload 3
ldc "Time unit"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 3
lload 1
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
lstore 4
start local 4 2: lload 4
lconst_0
lcmp
ifgt 3
lconst_0
goto 4
StackMap locals: long
StackMap stack:
3: invokestatic java.lang.System.currentTimeMillis:()J
StackMap locals:
StackMap stack: long
4: lstore 6
start local 6 5: lload 4
lstore 8
start local 8 6: aload 0
getfield org.apache.http.concurrent.BasicFuture.completed:Z
ifeq 8
7: aload 0
invokevirtual org.apache.http.concurrent.BasicFuture.getResult:()Ljava/lang/Object;
areturn
8: StackMap locals: long long
StackMap stack:
lload 8
lconst_0
lcmp
ifgt 10
9: new java.util.concurrent.TimeoutException
dup
invokespecial java.util.concurrent.TimeoutException.<init>:()V
athrow
10: StackMap locals:
StackMap stack:
aload 0
lload 8
invokevirtual java.lang.Object.wait:(J)V
11: aload 0
getfield org.apache.http.concurrent.BasicFuture.completed:Z
ifeq 13
12: aload 0
invokevirtual org.apache.http.concurrent.BasicFuture.getResult:()Ljava/lang/Object;
areturn
13: StackMap locals:
StackMap stack:
lload 4
invokestatic java.lang.System.currentTimeMillis:()J
lload 6
lsub
lsub
lstore 8
14: lload 8
lconst_0
lcmp
ifgt 10
15: new java.util.concurrent.TimeoutException
dup
invokespecial java.util.concurrent.TimeoutException.<init>:()V
athrow
end local 8 end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
0 16 1 timeout J
0 16 3 unit Ljava/util/concurrent/TimeUnit;
2 16 4 msecs J
5 16 6 startTime J
6 16 8 waitTime J
Exceptions:
throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException
Signature: (JLjava/util/concurrent/TimeUnit;)TT;
MethodParameters:
Name Flags
timeout final
unit final
public boolean completed();
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.http.concurrent.BasicFuture.completed:Z
ifeq 4
2: aload 2
monitorexit
3: iconst_0
ireturn
4: StackMap locals: org.apache.http.concurrent.BasicFuture
StackMap stack:
aload 0
iconst_1
putfield org.apache.http.concurrent.BasicFuture.completed:Z
5: aload 0
aload 1
putfield org.apache.http.concurrent.BasicFuture.result:Ljava/lang/Object;
6: aload 0
invokevirtual java.lang.Object.notifyAll:()V
7: aload 2
monitorexit
8: goto 11
StackMap locals:
StackMap stack: java.lang.Throwable
9: aload 2
monitorexit
10: athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.concurrent.BasicFuture.callback:Lorg/apache/http/concurrent/FutureCallback;
ifnull 13
12: aload 0
getfield org.apache.http.concurrent.BasicFuture.callback:Lorg/apache/http/concurrent/FutureCallback;
aload 1
invokeinterface org.apache.http.concurrent.FutureCallback.completed:(Ljava/lang/Object;)V
13: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
0 14 1 result TT;
Exception table:
from to target type
1 3 9 any
4 8 9 any
9 10 9 any
Signature: (TT;)Z
MethodParameters:
Name Flags
result final
public boolean failed(java.lang.Exception);
descriptor: (Ljava/lang/Exception;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.http.concurrent.BasicFuture.completed:Z
ifeq 4
2: aload 2
monitorexit
3: iconst_0
ireturn
4: StackMap locals: org.apache.http.concurrent.BasicFuture
StackMap stack:
aload 0
iconst_1
putfield org.apache.http.concurrent.BasicFuture.completed:Z
5: aload 0
aload 1
putfield org.apache.http.concurrent.BasicFuture.ex:Ljava/lang/Exception;
6: aload 0
invokevirtual java.lang.Object.notifyAll:()V
7: aload 2
monitorexit
8: goto 11
StackMap locals:
StackMap stack: java.lang.Throwable
9: aload 2
monitorexit
10: athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.concurrent.BasicFuture.callback:Lorg/apache/http/concurrent/FutureCallback;
ifnull 13
12: aload 0
getfield org.apache.http.concurrent.BasicFuture.callback:Lorg/apache/http/concurrent/FutureCallback;
aload 1
invokeinterface org.apache.http.concurrent.FutureCallback.failed:(Ljava/lang/Exception;)V
13: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
0 14 1 exception Ljava/lang/Exception;
Exception table:
from to target type
1 3 9 any
4 8 9 any
9 10 9 any
MethodParameters:
Name Flags
exception final
public boolean cancel(boolean);
descriptor: (Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.http.concurrent.BasicFuture.completed:Z
ifeq 4
2: aload 2
monitorexit
3: iconst_0
ireturn
4: StackMap locals: org.apache.http.concurrent.BasicFuture
StackMap stack:
aload 0
iconst_1
putfield org.apache.http.concurrent.BasicFuture.completed:Z
5: aload 0
iconst_1
putfield org.apache.http.concurrent.BasicFuture.cancelled:Z
6: aload 0
invokevirtual java.lang.Object.notifyAll:()V
7: aload 2
monitorexit
8: goto 11
StackMap locals:
StackMap stack: java.lang.Throwable
9: aload 2
monitorexit
10: athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.concurrent.BasicFuture.callback:Lorg/apache/http/concurrent/FutureCallback;
ifnull 13
12: aload 0
getfield org.apache.http.concurrent.BasicFuture.callback:Lorg/apache/http/concurrent/FutureCallback;
invokeinterface org.apache.http.concurrent.FutureCallback.cancelled:()V
13: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
0 14 1 mayInterruptIfRunning Z
Exception table:
from to target type
1 3 9 any
4 8 9 any
9 10 9 any
MethodParameters:
Name Flags
mayInterruptIfRunning final
public boolean cancel();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual org.apache.http.concurrent.BasicFuture.cancel:(Z)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/concurrent/BasicFuture<TT;>;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/concurrent/Future<TT;>;Lorg/apache/http/concurrent/Cancellable;
SourceFile: "BasicFuture.java"