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.
140 lines
3.5 KiB
140 lines
3.5 KiB
.class final Lbolts/Task$15; |
|
.super Ljava/lang/Object; |
|
.source "Task.java" |
|
|
|
# interfaces |
|
.implements Ljava/lang/Runnable; |
|
|
|
|
|
# annotations |
|
.annotation system Ldalvik/annotation/EnclosingMethod; |
|
value = Lbolts/Task;->completeAfterTask(Lbolts/TaskCompletionSource;Lbolts/Continuation;Lbolts/Task;Ljava/util/concurrent/Executor;Lbolts/CancellationToken;)V |
|
.end annotation |
|
|
|
.annotation system Ldalvik/annotation/InnerClass; |
|
accessFlags = 0x8 |
|
name = null |
|
.end annotation |
|
|
|
|
|
# instance fields |
|
.field final synthetic val$continuation:Lbolts/Continuation; |
|
|
|
.field final synthetic val$ct:Lbolts/CancellationToken; |
|
|
|
.field final synthetic val$task:Lbolts/Task; |
|
|
|
.field final synthetic val$tcs:Lbolts/TaskCompletionSource; |
|
|
|
|
|
# direct methods |
|
.method constructor <init>(Lbolts/CancellationToken;Lbolts/TaskCompletionSource;Lbolts/Continuation;Lbolts/Task;)V |
|
.locals 0 |
|
|
|
.prologue |
|
.line 908 |
|
iput-object p1, p0, Lbolts/Task$15;->val$ct:Lbolts/CancellationToken; |
|
|
|
iput-object p2, p0, Lbolts/Task$15;->val$tcs:Lbolts/TaskCompletionSource; |
|
|
|
iput-object p3, p0, Lbolts/Task$15;->val$continuation:Lbolts/Continuation; |
|
|
|
iput-object p4, p0, Lbolts/Task$15;->val$task:Lbolts/Task; |
|
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V |
|
|
|
return-void |
|
.end method |
|
|
|
|
|
# virtual methods |
|
.method public run()V |
|
.locals 2 |
|
|
|
.prologue |
|
.line 911 |
|
iget-object v0, p0, Lbolts/Task$15;->val$ct:Lbolts/CancellationToken; |
|
|
|
if-eqz v0, :cond_0 |
|
|
|
iget-object v0, p0, Lbolts/Task$15;->val$ct:Lbolts/CancellationToken; |
|
|
|
invoke-virtual {v0}, Lbolts/CancellationToken;->isCancellationRequested()Z |
|
|
|
move-result v0 |
|
|
|
if-eqz v0, :cond_0 |
|
|
|
.line 912 |
|
iget-object v0, p0, Lbolts/Task$15;->val$tcs:Lbolts/TaskCompletionSource; |
|
|
|
invoke-virtual {v0}, Lbolts/TaskCompletionSource;->setCancelled()V |
|
|
|
.line 945 |
|
:goto_0 |
|
return-void |
|
|
|
.line 917 |
|
:cond_0 |
|
:try_start_0 |
|
iget-object v0, p0, Lbolts/Task$15;->val$continuation:Lbolts/Continuation; |
|
|
|
iget-object v1, p0, Lbolts/Task$15;->val$task:Lbolts/Task; |
|
|
|
invoke-interface {v0, v1}, Lbolts/Continuation;->then(Lbolts/Task;)Ljava/lang/Object; |
|
|
|
move-result-object v0 |
|
|
|
check-cast v0, Lbolts/Task; |
|
|
|
.line 918 |
|
if-nez v0, :cond_1 |
|
|
|
.line 919 |
|
iget-object v0, p0, Lbolts/Task$15;->val$tcs:Lbolts/TaskCompletionSource; |
|
|
|
const/4 v1, 0x0 |
|
|
|
invoke-virtual {v0, v1}, Lbolts/TaskCompletionSource;->setResult(Ljava/lang/Object;)V |
|
:try_end_0 |
|
.catch Ljava/util/concurrent/CancellationException; {:try_start_0 .. :try_end_0} :catch_0 |
|
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1 |
|
|
|
goto :goto_0 |
|
|
|
.line 940 |
|
:catch_0 |
|
move-exception v0 |
|
|
|
.line 941 |
|
iget-object v0, p0, Lbolts/Task$15;->val$tcs:Lbolts/TaskCompletionSource; |
|
|
|
invoke-virtual {v0}, Lbolts/TaskCompletionSource;->setCancelled()V |
|
|
|
goto :goto_0 |
|
|
|
.line 921 |
|
:cond_1 |
|
:try_start_1 |
|
new-instance v1, Lbolts/Task$15$1; |
|
|
|
invoke-direct {v1, p0}, Lbolts/Task$15$1;-><init>(Lbolts/Task$15;)V |
|
|
|
invoke-virtual {v0, v1}, Lbolts/Task;->continueWith(Lbolts/Continuation;)Lbolts/Task; |
|
:try_end_1 |
|
.catch Ljava/util/concurrent/CancellationException; {:try_start_1 .. :try_end_1} :catch_0 |
|
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1 |
|
|
|
goto :goto_0 |
|
|
|
.line 942 |
|
:catch_1 |
|
move-exception v0 |
|
|
|
.line 943 |
|
iget-object v1, p0, Lbolts/Task$15;->val$tcs:Lbolts/TaskCompletionSource; |
|
|
|
invoke-virtual {v1, v0}, Lbolts/TaskCompletionSource;->setError(Ljava/lang/Exception;)V |
|
|
|
goto :goto_0 |
|
.end method
|
|
|