今奥全景相机
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

177 lines
4.4 KiB

.class Lbolts/Task$9;
.super Ljava/lang/Object;
.source "Task.java"
# interfaces
.implements Lbolts/Continuation;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lbolts/Task;->continueWhile(Ljava/util/concurrent/Callable;Lbolts/Continuation;Ljava/util/concurrent/Executor;Lbolts/CancellationToken;)Lbolts/Task;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lbolts/Continuation",
"<",
"Ljava/lang/Void;",
"Lbolts/Task",
"<",
"Ljava/lang/Void;",
">;>;"
}
.end annotation
# instance fields
.field final synthetic this$0:Lbolts/Task;
.field final synthetic val$continuation:Lbolts/Continuation;
.field final synthetic val$ct:Lbolts/CancellationToken;
.field final synthetic val$executor:Ljava/util/concurrent/Executor;
.field final synthetic val$predicate:Ljava/util/concurrent/Callable;
.field final synthetic val$predicateContinuation:Lbolts/Capture;
# direct methods
.method constructor <init>(Lbolts/Task;Lbolts/CancellationToken;Ljava/util/concurrent/Callable;Lbolts/Continuation;Ljava/util/concurrent/Executor;Lbolts/Capture;)V
.locals 0
.prologue
.line 611
iput-object p1, p0, Lbolts/Task$9;->this$0:Lbolts/Task;
iput-object p2, p0, Lbolts/Task$9;->val$ct:Lbolts/CancellationToken;
iput-object p3, p0, Lbolts/Task$9;->val$predicate:Ljava/util/concurrent/Callable;
iput-object p4, p0, Lbolts/Task$9;->val$continuation:Lbolts/Continuation;
iput-object p5, p0, Lbolts/Task$9;->val$executor:Ljava/util/concurrent/Executor;
iput-object p6, p0, Lbolts/Task$9;->val$predicateContinuation:Lbolts/Capture;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public then(Lbolts/Task;)Lbolts/Task;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lbolts/Task",
"<",
"Ljava/lang/Void;",
">;)",
"Lbolts/Task",
"<",
"Ljava/lang/Void;",
">;"
}
.end annotation
.prologue
const/4 v1, 0x0
.line 614
iget-object v0, p0, Lbolts/Task$9;->val$ct:Lbolts/CancellationToken;
if-eqz v0, :cond_0
iget-object v0, p0, Lbolts/Task$9;->val$ct:Lbolts/CancellationToken;
invoke-virtual {v0}, Lbolts/CancellationToken;->isCancellationRequested()Z
move-result v0
if-eqz v0, :cond_0
.line 615
invoke-static {}, Lbolts/Task;->cancelled()Lbolts/Task;
move-result-object v0
.line 622
:goto_0
return-object v0
.line 618
:cond_0
iget-object v0, p0, Lbolts/Task$9;->val$predicate:Ljava/util/concurrent/Callable;
invoke-interface {v0}, Ljava/util/concurrent/Callable;->call()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Boolean;
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
if-eqz v0, :cond_1
.line 619
invoke-static {v1}, Lbolts/Task;->forResult(Ljava/lang/Object;)Lbolts/Task;
move-result-object v0
iget-object v1, p0, Lbolts/Task$9;->val$continuation:Lbolts/Continuation;
iget-object v2, p0, Lbolts/Task$9;->val$executor:Ljava/util/concurrent/Executor;
invoke-virtual {v0, v1, v2}, Lbolts/Task;->onSuccessTask(Lbolts/Continuation;Ljava/util/concurrent/Executor;)Lbolts/Task;
move-result-object v1
iget-object v0, p0, Lbolts/Task$9;->val$predicateContinuation:Lbolts/Capture;
invoke-virtual {v0}, Lbolts/Capture;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lbolts/Continuation;
iget-object v2, p0, Lbolts/Task$9;->val$executor:Ljava/util/concurrent/Executor;
invoke-virtual {v1, v0, v2}, Lbolts/Task;->onSuccessTask(Lbolts/Continuation;Ljava/util/concurrent/Executor;)Lbolts/Task;
move-result-object v0
goto :goto_0
.line 622
:cond_1
invoke-static {v1}, Lbolts/Task;->forResult(Ljava/lang/Object;)Lbolts/Task;
move-result-object v0
goto :goto_0
.end method
.method public bridge synthetic then(Lbolts/Task;)Ljava/lang/Object;
.locals 1
.prologue
.line 611
invoke-virtual {p0, p1}, Lbolts/Task$9;->then(Lbolts/Task;)Lbolts/Task;
move-result-object v0
return-object v0
.end method