abstract class android.accounts.AccountManager$Future2Task<T> extends android.accounts.AccountManager$BaseFutureTask<T> implements android.accounts.AccountManagerFuture<T>
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: android.accounts.AccountManager$Future2Task
super_class: android.accounts.AccountManager$BaseFutureTask
{
final android.accounts.AccountManagerCallback<T> mCallback;
descriptor: Landroid/accounts/AccountManagerCallback;
flags: (0x0010) ACC_FINAL
Signature: Landroid/accounts/AccountManagerCallback<TT;>;
final android.accounts.AccountManager this$0;
descriptor: Landroid/accounts/AccountManager;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(android.os.Handler, android.accounts.AccountManagerCallback<T>);
descriptor: (Landroid/accounts/AccountManager;Landroid/os/Handler;Landroid/accounts/AccountManagerCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield android.accounts.AccountManager$Future2Task.this$0:Landroid/accounts/AccountManager;
1: aload 0
aload 1
aload 2
invokespecial android.accounts.AccountManager$BaseFutureTask.<init>:(Landroid/accounts/AccountManager;Landroid/os/Handler;)V
2: aload 0
aload 3
putfield android.accounts.AccountManager$Future2Task.mCallback:Landroid/accounts/AccountManagerCallback;
3: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/accounts/AccountManager$Future2Task<TT;>;
0 4 2 handler Landroid/os/Handler;
0 4 3 callback Landroid/accounts/AccountManagerCallback<TT;>;
Signature: (Landroid/os/Handler;Landroid/accounts/AccountManagerCallback<TT;>;)V
MethodParameters:
Name Flags
this$0 final
handler
callback
protected void done();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield android.accounts.AccountManager$Future2Task.mCallback:Landroid/accounts/AccountManagerCallback;
ifnull 2
1: aload 0
new android.accounts.AccountManager$Future2Task$1
dup
aload 0
invokespecial android.accounts.AccountManager$Future2Task$1.<init>:(Landroid/accounts/AccountManager$Future2Task;)V
invokevirtual android.accounts.AccountManager$Future2Task.postRunnableToHandler:(Ljava/lang/Runnable;)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/accounts/AccountManager$Future2Task<TT;>;
public android.accounts.AccountManager$Future2Task<T> start();
descriptor: ()Landroid/accounts/AccountManager$Future2Task;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual android.accounts.AccountManager$Future2Task.startTask:()V
1: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/accounts/AccountManager$Future2Task<TT;>;
Signature: ()Landroid/accounts/AccountManager$Future2Task<TT;>;
private T internalGetResult(java.lang.Long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual android.accounts.AccountManager$Future2Task.isDone:()Z
ifne 2
1: aload 0
getfield android.accounts.AccountManager$Future2Task.this$0:Landroid/accounts/AccountManager;
invokevirtual android.accounts.AccountManager.ensureNotOnMainThread:()V
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
3: aload 0
invokevirtual android.accounts.AccountManager$Future2Task.get:()Ljava/lang/Object;
astore 6
4: aload 0
iconst_1
invokevirtual android.accounts.AccountManager$Future2Task.cancel:(Z)Z
pop
5: aload 6
areturn
6: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.lang.Long.longValue:()J
aload 2
invokevirtual android.accounts.AccountManager$Future2Task.get:(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
astore 6
7: aload 0
iconst_1
invokevirtual android.accounts.AccountManager$Future2Task.cancel:(Z)Z
pop
8: aload 6
areturn
9: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
10: aload 0
iconst_1
invokevirtual android.accounts.AccountManager$Future2Task.cancel:(Z)Z
pop
goto 31
11: StackMap locals:
StackMap stack: java.util.concurrent.TimeoutException
pop
12: aload 0
iconst_1
invokevirtual android.accounts.AccountManager$Future2Task.cancel:(Z)Z
pop
goto 31
13: StackMap locals:
StackMap stack: java.util.concurrent.CancellationException
pop
14: aload 0
iconst_1
invokevirtual android.accounts.AccountManager$Future2Task.cancel:(Z)Z
pop
goto 31
15: StackMap locals:
StackMap stack: java.util.concurrent.ExecutionException
astore 3
start local 3 16: aload 3
invokevirtual java.util.concurrent.ExecutionException.getCause:()Ljava/lang/Throwable;
astore 4
start local 4 17: aload 4
instanceof java.io.IOException
ifeq 19
18: aload 4
checkcast java.io.IOException
athrow
19: StackMap locals: java.util.concurrent.ExecutionException java.lang.Throwable
StackMap stack:
aload 4
instanceof java.lang.UnsupportedOperationException
ifeq 21
20: new android.accounts.AuthenticatorException
dup
aload 4
invokespecial android.accounts.AuthenticatorException.<init>:(Ljava/lang/Throwable;)V
athrow
21: StackMap locals:
StackMap stack:
aload 4
instanceof android.accounts.AuthenticatorException
ifeq 23
22: aload 4
checkcast android.accounts.AuthenticatorException
athrow
23: StackMap locals:
StackMap stack:
aload 4
instanceof java.lang.RuntimeException
ifeq 25
24: aload 4
checkcast java.lang.RuntimeException
athrow
25: StackMap locals:
StackMap stack:
aload 4
instanceof java.lang.Error
ifeq 27
26: aload 4
checkcast java.lang.Error
athrow
27: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
aload 4
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 end local 3 28: StackMap locals: android.accounts.AccountManager$Future2Task java.lang.Long java.util.concurrent.TimeUnit
StackMap stack: java.lang.Throwable
astore 5
29: aload 0
iconst_1
invokevirtual android.accounts.AccountManager$Future2Task.cancel:(Z)Z
pop
30: aload 5
athrow
31: StackMap locals:
StackMap stack:
new android.accounts.OperationCanceledException
dup
invokespecial android.accounts.OperationCanceledException.<init>:()V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Landroid/accounts/AccountManager$Future2Task<TT;>;
0 32 1 timeout Ljava/lang/Long;
0 32 2 unit Ljava/util/concurrent/TimeUnit;
16 28 3 e Ljava/util/concurrent/ExecutionException;
17 28 4 cause Ljava/lang/Throwable;
Exception table:
from to target type
2 4 9 Class java.lang.InterruptedException
6 7 9 Class java.lang.InterruptedException
2 4 11 Class java.util.concurrent.TimeoutException
6 7 11 Class java.util.concurrent.TimeoutException
2 4 13 Class java.util.concurrent.CancellationException
6 7 13 Class java.util.concurrent.CancellationException
2 4 15 Class java.util.concurrent.ExecutionException
6 7 15 Class java.util.concurrent.ExecutionException
2 4 28 any
6 7 28 any
9 10 28 any
11 12 28 any
13 14 28 any
15 28 28 any
Exceptions:
throws android.accounts.OperationCanceledException, java.io.IOException, android.accounts.AuthenticatorException
Signature: (Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)TT;
MethodParameters:
Name Flags
timeout
unit
public T getResult();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
aconst_null
invokevirtual android.accounts.AccountManager$Future2Task.internalGetResult:(Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/accounts/AccountManager$Future2Task<TT;>;
Exceptions:
throws android.accounts.OperationCanceledException, java.io.IOException, android.accounts.AuthenticatorException
Signature: ()TT;
public T getResult(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokevirtual android.accounts.AccountManager$Future2Task.internalGetResult:(Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Ljava/lang/Object;
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/accounts/AccountManager$Future2Task<TT;>;
0 1 1 timeout J
0 1 3 unit Ljava/util/concurrent/TimeUnit;
Exceptions:
throws android.accounts.OperationCanceledException, java.io.IOException, android.accounts.AuthenticatorException
Signature: (JLjava/util/concurrent/TimeUnit;)TT;
MethodParameters:
Name Flags
timeout
unit
}
Signature: <T:Ljava/lang/Object;>Landroid/accounts/AccountManager$BaseFutureTask<TT;>;Landroid/accounts/AccountManagerFuture<TT;>;
SourceFile: "AccountManager.java"
NestHost: android.accounts.AccountManager
InnerClasses:
private abstract BaseFutureTask = android.accounts.AccountManager$BaseFutureTask of android.accounts.AccountManager
private abstract Future2Task = android.accounts.AccountManager$Future2Task of android.accounts.AccountManager
android.accounts.AccountManager$Future2Task$1