168 lines
4.5 KiB
Smali
168 lines
4.5 KiB
Smali
.class public final Landroidx/work/OperationKt;
|
|
.super Ljava/lang/Object;
|
|
.source "Operation.kt"
|
|
|
|
|
|
# direct methods
|
|
.method public static final await(Landroidx/work/Operation;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
.locals 3
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Landroidx/work/Operation;",
|
|
"Lkotlin/coroutines/Continuation<",
|
|
"-",
|
|
"Landroidx/work/Operation$State$SUCCESS;",
|
|
">;)",
|
|
"Ljava/lang/Object;"
|
|
}
|
|
.end annotation
|
|
|
|
invoke-interface {p0}, Landroidx/work/Operation;->getResult()Lf/h/b/a/a/a;
|
|
|
|
move-result-object p0
|
|
|
|
const-string v0, "result"
|
|
|
|
invoke-static {p0, v0}, Lx/m/c/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
invoke-interface {p0}, Ljava/util/concurrent/Future;->isDone()Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
:try_start_0
|
|
invoke-interface {p0}, Ljava/util/concurrent/Future;->get()Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
:try_end_0
|
|
.catch Ljava/util/concurrent/ExecutionException; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
goto :goto_0
|
|
|
|
:catch_0
|
|
move-exception p0
|
|
|
|
invoke-virtual {p0}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
|
|
|
|
move-result-object p1
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
move-object p0, p1
|
|
|
|
:cond_0
|
|
throw p0
|
|
|
|
:cond_1
|
|
new-instance v0, Ly/a/g;
|
|
|
|
invoke-static {p1}, Lf/h/a/f/f/n/g;->intercepted(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
|
|
|
|
move-result-object v1
|
|
|
|
const/4 v2, 0x1
|
|
|
|
invoke-direct {v0, v1, v2}, Ly/a/g;-><init>(Lkotlin/coroutines/Continuation;I)V
|
|
|
|
new-instance v1, Landroidx/work/OperationKt$await$$inlined$suspendCancellableCoroutine$lambda$1;
|
|
|
|
invoke-direct {v1, v0, p0}, Landroidx/work/OperationKt$await$$inlined$suspendCancellableCoroutine$lambda$1;-><init>(Ly/a/f;Lf/h/b/a/a/a;)V
|
|
|
|
sget-object v2, Landroidx/work/DirectExecutor;->INSTANCE:Landroidx/work/DirectExecutor;
|
|
|
|
invoke-interface {p0, v1, v2}, Lf/h/b/a/a/a;->addListener(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
|
|
|
|
invoke-virtual {v0}, Ly/a/g;->j()Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
sget-object v0, Lx/j/g/a;->d:Lx/j/g/a;
|
|
|
|
if-ne p0, v0, :cond_2
|
|
|
|
const-string v0, "frame"
|
|
|
|
invoke-static {p1, v0}, Lx/m/c/j;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
:cond_2
|
|
:goto_0
|
|
return-object p0
|
|
.end method
|
|
|
|
.method private static final await$$forInline(Landroidx/work/Operation;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
.locals 3
|
|
|
|
invoke-interface {p0}, Landroidx/work/Operation;->getResult()Lf/h/b/a/a/a;
|
|
|
|
move-result-object p0
|
|
|
|
const-string v0, "result"
|
|
|
|
invoke-static {p0, v0}, Lx/m/c/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
invoke-interface {p0}, Ljava/util/concurrent/Future;->isDone()Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
:try_start_0
|
|
invoke-interface {p0}, Ljava/util/concurrent/Future;->get()Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
:try_end_0
|
|
.catch Ljava/util/concurrent/ExecutionException; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
goto :goto_0
|
|
|
|
:catch_0
|
|
move-exception p0
|
|
|
|
invoke-virtual {p0}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
|
|
|
|
move-result-object p1
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
move-object p0, p1
|
|
|
|
:cond_0
|
|
throw p0
|
|
|
|
:cond_1
|
|
new-instance v0, Ly/a/g;
|
|
|
|
invoke-static {p1}, Lf/h/a/f/f/n/g;->intercepted(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
|
|
|
|
move-result-object v1
|
|
|
|
const/4 v2, 0x1
|
|
|
|
invoke-direct {v0, v1, v2}, Ly/a/g;-><init>(Lkotlin/coroutines/Continuation;I)V
|
|
|
|
new-instance v1, Landroidx/work/OperationKt$await$$inlined$suspendCancellableCoroutine$lambda$1;
|
|
|
|
invoke-direct {v1, v0, p0}, Landroidx/work/OperationKt$await$$inlined$suspendCancellableCoroutine$lambda$1;-><init>(Ly/a/f;Lf/h/b/a/a/a;)V
|
|
|
|
sget-object v2, Landroidx/work/DirectExecutor;->INSTANCE:Landroidx/work/DirectExecutor;
|
|
|
|
invoke-interface {p0, v1, v2}, Lf/h/b/a/a/a;->addListener(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
|
|
|
|
invoke-virtual {v0}, Ly/a/g;->j()Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
sget-object v0, Lx/j/g/a;->d:Lx/j/g/a;
|
|
|
|
if-ne p0, v0, :cond_2
|
|
|
|
const-string v0, "frame"
|
|
|
|
invoke-static {p1, v0}, Lx/m/c/j;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
:cond_2
|
|
:goto_0
|
|
return-object p0
|
|
.end method
|