Add Discord APKTool decompilation (Smali source for modding)

- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3
- APKTool decompilation (Smali bytecode) for modding and rebuilding APK
- Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures
- Includes full Smali source, resources, and native libraries
- Ready to rebuild APK after modifications with apktool b command
- Added comprehensive README-apktool.md with modding guide

This branch complements the JADX branches:
- Use JADX (main/discord-community) to UNDERSTAND code (readable Java)
- Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali)

Total: 44,417 files, 538.51 MB Smali source code
This commit is contained in:
2026-02-18 16:13:44 -08:00
parent c080f0d97f
commit f3960ee359
44288 changed files with 10998761 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
.class final Landroidx/work/impl/utils/Api28Impl;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x1c
.end annotation
# static fields
.field public static final INSTANCE:Landroidx/work/impl/utils/Api28Impl;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Landroidx/work/impl/utils/Api28Impl;
invoke-direct {v0}, Landroidx/work/impl/utils/Api28Impl;-><init>()V
sput-object v0, Landroidx/work/impl/utils/Api28Impl;->INSTANCE:Landroidx/work/impl/utils/Api28Impl;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 68
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final getProcessName()Ljava/lang/String;
.locals 2
.line 71
invoke-static {}, Landroid/app/Application;->getProcessName()Ljava/lang/String;
move-result-object v0
const-string v1, "getProcessName()"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
return-object v0
.end method

View File

@@ -0,0 +1,48 @@
.class public final synthetic Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/WorkDatabase;
.field public final synthetic f$1:Ljava/lang/String;
.field public final synthetic f$2:Landroidx/work/impl/WorkManagerImpl;
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkDatabase;
iput-object p2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;->f$1:Ljava/lang/String;
iput-object p3, p0, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;->f$2:Landroidx/work/impl/WorkManagerImpl;
return-void
.end method
# virtual methods
.method public final run()V
.locals 3
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkDatabase;
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;->f$1:Ljava/lang/String;
iget-object v2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;->f$2:Landroidx/work/impl/WorkManagerImpl;
invoke-static {v0, v1, v2}, Landroidx/work/impl/utils/CancelWorkRunnable;->$r8$lambda$WD4Fv1ryEhJESsEiB0wRUQT9gA0(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method

View File

@@ -0,0 +1,42 @@
.class public final synthetic Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/WorkDatabase;
.field public final synthetic f$1:Landroidx/work/impl/WorkManagerImpl;
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkDatabase;
iput-object p2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1$$ExternalSyntheticLambda0;->f$1:Landroidx/work/impl/WorkManagerImpl;
return-void
.end method
# virtual methods
.method public final run()V
.locals 2
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkDatabase;
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1$$ExternalSyntheticLambda0;->f$1:Landroidx/work/impl/WorkManagerImpl;
invoke-static {v0, v1}, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;->$r8$lambda$5Vsi1rsy0afZ4g4Yi1GbIYzI0uM(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method

View File

@@ -0,0 +1,150 @@
.class final Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/CancelWorkRunnable;->forAll(Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function0;"
}
.end annotation
# instance fields
.field final synthetic $workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
# direct methods
.method public static synthetic $r8$lambda$5Vsi1rsy0afZ4g4Yi1GbIYzI0uM(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 0
invoke-static {p0, p1}, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;->invoke$lambda$0(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method
.method public constructor <init>(Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
const/4 p1, 0x0
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
.method private static final invoke$lambda$0(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/WorkManagerImpl;)V
.locals 2
.line 146
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v0
.line 147
invoke-interface {v0}, Landroidx/work/impl/model/WorkSpecDao;->getAllUnfinishedWork()Ljava/util/List;
move-result-object v0
.line 148
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
.line 149
invoke-static {p1, v1}, Landroidx/work/impl/utils/CancelWorkRunnable;->access$cancel(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
goto :goto_0
.line 152
:cond_0
new-instance v0, Landroidx/work/impl/utils/PreferenceUtils;
invoke-direct {v0, p0}, Landroidx/work/impl/utils/PreferenceUtils;-><init>(Landroidx/work/impl/WorkDatabase;)V
.line 153
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object p0
invoke-virtual {p0}, Landroidx/work/Configuration;->getClock()Landroidx/work/Clock;
move-result-object p0
invoke-interface {p0}, Landroidx/work/Clock;->currentTimeMillis()J
move-result-wide p0
invoke-virtual {v0, p0, p1}, Landroidx/work/impl/utils/PreferenceUtils;->setLastCancelAllTimeMillis(J)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke()Ljava/lang/Object;
.locals 1
.line 139
invoke-virtual {p0}, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;->invoke()V
sget-object v0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
return-object v0
.end method
.method public final invoke()V
.locals 3
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 144
invoke-virtual {v0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v0
const-string v1, "workManagerImpl.workDatabase"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 145
new-instance v2, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1$$ExternalSyntheticLambda0;
invoke-direct {v2, v0, v1}, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1$$ExternalSyntheticLambda0;-><init>(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/WorkManagerImpl;)V
invoke-virtual {v0, v2}, Landroidx/room/RoomDatabase;->runInTransaction(Ljava/lang/Runnable;)V
return-void
.end method

View File

@@ -0,0 +1,42 @@
.class public final synthetic Landroidx/work/impl/utils/CancelWorkRunnable$forId$1$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/WorkManagerImpl;
.field public final synthetic f$1:Ljava/util/UUID;
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkManagerImpl;
iput-object p2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1$$ExternalSyntheticLambda0;->f$1:Ljava/util/UUID;
return-void
.end method
# virtual methods
.method public final run()V
.locals 2
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkManagerImpl;
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1$$ExternalSyntheticLambda0;->f$1:Ljava/util/UUID;
invoke-static {v0, v1}, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->$r8$lambda$S-Yh7UPmn1Vblsa6VEzUMMOtnuQ(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
return-void
.end method

View File

@@ -0,0 +1,118 @@
.class final Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/CancelWorkRunnable;->forId(Ljava/util/UUID;Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function0;"
}
.end annotation
# instance fields
.field final synthetic $id:Ljava/util/UUID;
.field final synthetic $workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
# direct methods
.method public static synthetic $r8$lambda$S-Yh7UPmn1Vblsa6VEzUMMOtnuQ(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
.locals 0
.line 0
invoke-static {p0, p1}, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->invoke$lambda$0(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
return-void
.end method
.method public constructor <init>(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
iput-object p2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->$id:Ljava/util/UUID;
const/4 p1, 0x0
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
.method private static final invoke$lambda$0(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
.locals 1
.line 76
invoke-virtual {p1}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "id.toString()"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {p0, p1}, Landroidx/work/impl/utils/CancelWorkRunnable;->access$cancel(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke()Ljava/lang/Object;
.locals 1
.line 70
invoke-virtual {p0}, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->invoke()V
sget-object v0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
return-object v0
.end method
.method public final invoke()V
.locals 4
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 75
invoke-virtual {v0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v0
const-string v1, "workManagerImpl.workDatabase"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
iget-object v2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->$id:Ljava/util/UUID;
.line 76
new-instance v3, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1$$ExternalSyntheticLambda0;
invoke-direct {v3, v1, v2}, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1$$ExternalSyntheticLambda0;-><init>(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
invoke-virtual {v0, v3}, Landroidx/room/RoomDatabase;->runInTransaction(Ljava/lang/Runnable;)V
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 77
invoke-static {v0}, Landroidx/work/impl/utils/CancelWorkRunnable;->access$reschedulePendingWorkers(Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method

View File

@@ -0,0 +1,77 @@
.class final Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/CancelWorkRunnable;->forName(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function0;"
}
.end annotation
# instance fields
.field final synthetic $name:Ljava/lang/String;
.field final synthetic $workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
# direct methods
.method public constructor <init>(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;->$name:Ljava/lang/String;
iput-object p2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
const/4 p1, 0x0
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke()Ljava/lang/Object;
.locals 1
.line 112
invoke-virtual {p0}, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;->invoke()V
sget-object v0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
return-object v0
.end method
.method public final invoke()V
.locals 2
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;->$name:Ljava/lang/String;
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 117
invoke-static {v0, v1}, Landroidx/work/impl/utils/CancelWorkRunnable;->forNameInline(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 118
invoke-static {v0}, Landroidx/work/impl/utils/CancelWorkRunnable;->access$reschedulePendingWorkers(Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method

View File

@@ -0,0 +1,48 @@
.class public final synthetic Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/WorkDatabase;
.field public final synthetic f$1:Ljava/lang/String;
.field public final synthetic f$2:Landroidx/work/impl/WorkManagerImpl;
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkDatabase;
iput-object p2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;->f$1:Ljava/lang/String;
iput-object p3, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;->f$2:Landroidx/work/impl/WorkManagerImpl;
return-void
.end method
# virtual methods
.method public final run()V
.locals 3
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/WorkDatabase;
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;->f$1:Ljava/lang/String;
iget-object v2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;->f$2:Landroidx/work/impl/WorkManagerImpl;
invoke-static {v0, v1, v2}, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->$r8$lambda$JYL9FQmEVcyh9IQCmefgT57WkCE(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method

View File

@@ -0,0 +1,141 @@
.class final Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/CancelWorkRunnable;->forTag(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function0;"
}
.end annotation
# instance fields
.field final synthetic $tag:Ljava/lang/String;
.field final synthetic $workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
# direct methods
.method public static synthetic $r8$lambda$JYL9FQmEVcyh9IQCmefgT57WkCE(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 0
invoke-static {p0, p1, p2}, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->invoke$lambda$0(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method
.method public constructor <init>(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
iput-object p2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->$tag:Ljava/lang/String;
const/4 p1, 0x0
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
.method private static final invoke$lambda$0(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 95
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p0
.line 96
invoke-interface {p0, p1}, Landroidx/work/impl/model/WorkSpecDao;->getUnfinishedWorkWithTag(Ljava/lang/String;)Ljava/util/List;
move-result-object p0
.line 97
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result p1
if-eqz p1, :cond_0
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/String;
.line 98
invoke-static {p2, p1}, Landroidx/work/impl/utils/CancelWorkRunnable;->access$cancel(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
goto :goto_0
:cond_0
return-void
.end method
# virtual methods
.method public bridge synthetic invoke()Ljava/lang/Object;
.locals 1
.line 88
invoke-virtual {p0}, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->invoke()V
sget-object v0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
return-object v0
.end method
.method public final invoke()V
.locals 4
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 93
invoke-virtual {v0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v0
const-string v1, "workManagerImpl.workDatabase"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
iget-object v1, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->$tag:Ljava/lang/String;
iget-object v2, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 94
new-instance v3, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;
invoke-direct {v3, v0, v1, v2}, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1$$ExternalSyntheticLambda0;-><init>(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
invoke-virtual {v0, v3}, Landroidx/room/RoomDatabase;->runInTransaction(Ljava/lang/Runnable;)V
iget-object v0, p0, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;->$workManagerImpl:Landroidx/work/impl/WorkManagerImpl;
.line 101
invoke-static {v0}, Landroidx/work/impl/utils/CancelWorkRunnable;->access$reschedulePendingWorkers(Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method

View File

@@ -0,0 +1,471 @@
.class public final Landroidx/work/impl/utils/CancelWorkRunnable;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic $r8$lambda$WD4Fv1ryEhJESsEiB0wRUQT9gA0(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 0
invoke-static {p0, p1, p2}, Landroidx/work/impl/utils/CancelWorkRunnable;->forNameInline$lambda$0(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method
.method public static final synthetic access$cancel(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
.locals 0
.line 1
invoke-static {p0, p1}, Landroidx/work/impl/utils/CancelWorkRunnable;->cancel(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
return-void
.end method
.method public static final synthetic access$reschedulePendingWorkers(Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 1
invoke-static {p0}, Landroidx/work/impl/utils/CancelWorkRunnable;->reschedulePendingWorkers(Landroidx/work/impl/WorkManagerImpl;)V
return-void
.end method
.method private static final cancel(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
.locals 2
.line 31
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v0
const-string v1, "workManagerImpl.workDatabase"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {v0, p1}, Landroidx/work/impl/utils/CancelWorkRunnable;->iterativelyCancelWorkAndDependents(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;)V
.line 32
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getProcessor()Landroidx/work/impl/Processor;
move-result-object v0
const-string v1, "workManagerImpl.processor"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
const/4 v1, 0x1
.line 33
invoke-virtual {v0, p1, v1}, Landroidx/work/impl/Processor;->stopAndCancelWork(Ljava/lang/String;I)Z
.line 34
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getSchedulers()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_0
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/work/impl/Scheduler;
.line 35
invoke-interface {v0, p1}, Landroidx/work/impl/Scheduler;->cancel(Ljava/lang/String;)V
goto :goto_0
:cond_0
return-void
.end method
.method public static final forAll(Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.locals 3
const-string v0, "workManagerImpl"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 140
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v0
invoke-virtual {v0}, Landroidx/work/Configuration;->getTracer()Landroidx/work/Tracer;
move-result-object v0
.line 142
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getWorkTaskExecutor()Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
move-result-object v1
invoke-interface {v1}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object v1
const-string v2, "workManagerImpl.workTask\u2026ecutor.serialTaskExecutor"
invoke-static {v1, v2}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
.line 139
new-instance v2, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;
invoke-direct {v2, p0}, Landroidx/work/impl/utils/CancelWorkRunnable$forAll$1;-><init>(Landroidx/work/impl/WorkManagerImpl;)V
const-string p0, "CancelAllWork"
invoke-static {v0, p0, v1, v2}, Landroidx/work/OperationKt;->launchOperation(Landroidx/work/Tracer;Ljava/lang/String;Ljava/util/concurrent/Executor;Lkotlin/jvm/functions/Function0;)Landroidx/work/Operation;
move-result-object p0
return-object p0
.end method
.method public static final forId(Ljava/util/UUID;Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.locals 3
const-string v0, "id"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "workManagerImpl"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 71
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v0
invoke-virtual {v0}, Landroidx/work/Configuration;->getTracer()Landroidx/work/Tracer;
move-result-object v0
.line 73
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getWorkTaskExecutor()Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
move-result-object v1
invoke-interface {v1}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object v1
const-string v2, "workManagerImpl.workTask\u2026ecutor.serialTaskExecutor"
invoke-static {v1, v2}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
.line 70
new-instance v2, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;
invoke-direct {v2, p1, p0}, Landroidx/work/impl/utils/CancelWorkRunnable$forId$1;-><init>(Landroidx/work/impl/WorkManagerImpl;Ljava/util/UUID;)V
const-string p0, "CancelWorkById"
invoke-static {v0, p0, v1, v2}, Landroidx/work/OperationKt;->launchOperation(Landroidx/work/Tracer;Ljava/lang/String;Ljava/util/concurrent/Executor;Lkotlin/jvm/functions/Function0;)Landroidx/work/Operation;
move-result-object p0
return-object p0
.end method
.method public static final forName(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.locals 4
const-string v0, "name"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "workManagerImpl"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 113
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v0
invoke-virtual {v0}, Landroidx/work/Configuration;->getTracer()Landroidx/work/Tracer;
move-result-object v0
.line 114
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "CancelWorkByName_"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 115
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getWorkTaskExecutor()Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
move-result-object v2
invoke-interface {v2}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object v2
const-string v3, "workManagerImpl.workTask\u2026ecutor.serialTaskExecutor"
invoke-static {v2, v3}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
.line 112
new-instance v3, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;
invoke-direct {v3, p0, p1}, Landroidx/work/impl/utils/CancelWorkRunnable$forName$1;-><init>(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
invoke-static {v0, v1, v2, v3}, Landroidx/work/OperationKt;->launchOperation(Landroidx/work/Tracer;Ljava/lang/String;Ljava/util/concurrent/Executor;Lkotlin/jvm/functions/Function0;)Landroidx/work/Operation;
move-result-object p0
return-object p0
.end method
.method public static final forNameInline(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 2
const-string v0, "name"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "workManagerImpl"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 122
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v0
const-string v1, "workManagerImpl.workDatabase"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
.line 123
new-instance v1, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;
invoke-direct {v1, v0, p0, p1}, Landroidx/work/impl/utils/CancelWorkRunnable$$ExternalSyntheticLambda0;-><init>(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
invoke-virtual {v0, v1}, Landroidx/room/RoomDatabase;->runInTransaction(Ljava/lang/Runnable;)V
return-void
.end method
.method private static final forNameInline$lambda$0(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.locals 0
.line 124
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p0
.line 125
invoke-interface {p0, p1}, Landroidx/work/impl/model/WorkSpecDao;->getUnfinishedWorkWithName(Ljava/lang/String;)Ljava/util/List;
move-result-object p0
.line 126
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result p1
if-eqz p1, :cond_0
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/String;
.line 127
invoke-static {p2, p1}, Landroidx/work/impl/utils/CancelWorkRunnable;->cancel(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
goto :goto_0
:cond_0
return-void
.end method
.method public static final forTag(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)Landroidx/work/Operation;
.locals 4
const-string v0, "tag"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "workManagerImpl"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 89
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v0
invoke-virtual {v0}, Landroidx/work/Configuration;->getTracer()Landroidx/work/Tracer;
move-result-object v0
.line 90
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "CancelWorkByTag_"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 91
invoke-virtual {p1}, Landroidx/work/impl/WorkManagerImpl;->getWorkTaskExecutor()Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
move-result-object v2
invoke-interface {v2}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object v2
const-string v3, "workManagerImpl.workTask\u2026ecutor.serialTaskExecutor"
invoke-static {v2, v3}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
.line 88
new-instance v3, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;
invoke-direct {v3, p1, p0}, Landroidx/work/impl/utils/CancelWorkRunnable$forTag$1;-><init>(Landroidx/work/impl/WorkManagerImpl;Ljava/lang/String;)V
invoke-static {v0, v1, v2, v3}, Landroidx/work/OperationKt;->launchOperation(Landroidx/work/Tracer;Ljava/lang/String;Ljava/util/concurrent/Executor;Lkotlin/jvm/functions/Function0;)Landroidx/work/Operation;
move-result-object p0
return-object p0
.end method
.method private static final iterativelyCancelWorkAndDependents(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;)V
.locals 4
.line 48
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v0
.line 49
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->dependencyDao()Landroidx/work/impl/model/DependencyDao;
move-result-object p0
filled-new-array {p1}, [Ljava/lang/String;
move-result-object p1
.line 50
invoke-static {p1}, Lkotlin/collections/CollectionsKt;->mutableListOf([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
.line 51
:goto_0
move-object v1, p1
check-cast v1, Ljava/util/Collection;
invoke-interface {v1}, Ljava/util/Collection;->isEmpty()Z
move-result v1
xor-int/lit8 v1, v1, 0x1
if-eqz v1, :cond_1
.line 52
invoke-static {p1}, Lkotlin/collections/CollectionsKt;->removeLast(Ljava/util/List;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
.line 54
invoke-interface {v0, v1}, Landroidx/work/impl/model/WorkSpecDao;->getState(Ljava/lang/String;)Landroidx/work/WorkInfo$State;
move-result-object v2
.line 55
sget-object v3, Landroidx/work/WorkInfo$State;->SUCCEEDED:Landroidx/work/WorkInfo$State;
if-eq v2, v3, :cond_0
sget-object v3, Landroidx/work/WorkInfo$State;->FAILED:Landroidx/work/WorkInfo$State;
if-eq v2, v3, :cond_0
.line 56
invoke-interface {v0, v1}, Landroidx/work/impl/model/WorkSpecDao;->setCancelledState(Ljava/lang/String;)I
.line 58
:cond_0
invoke-interface {p0, v1}, Landroidx/work/impl/model/DependencyDao;->getDependentWorkIds(Ljava/lang/String;)Ljava/util/List;
move-result-object v1
check-cast v1, Ljava/util/Collection;
invoke-interface {p1, v1}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
goto :goto_0
:cond_1
return-void
.end method
.method private static final reschedulePendingWorkers(Landroidx/work/impl/WorkManagerImpl;)V
.locals 2
.line 41
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v0
.line 42
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v1
.line 43
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getSchedulers()Ljava/util/List;
move-result-object p0
.line 40
invoke-static {v0, v1, p0}, Landroidx/work/impl/Schedulers;->schedule(Landroidx/work/Configuration;Landroidx/work/impl/WorkDatabase;Ljava/util/List;)V
return-void
.end method

View File

@@ -0,0 +1,26 @@
.class public final Landroidx/work/impl/utils/DurationApi26Impl;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x1a
.end annotation
# direct methods
.method public static final toMillisCompat(Ljava/time/Duration;)J
.locals 2
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 25
invoke-virtual {p0}, Ljava/time/Duration;->toMillis()J
move-result-wide v0
return-wide v0
.end method

View File

@@ -0,0 +1,991 @@
.class public Landroidx/work/impl/utils/EnqueueRunnable;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 1
const-string v0, "EnqueueRunnable"
.line 64
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Landroidx/work/impl/utils/EnqueueRunnable;->TAG:Ljava/lang/String;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 61
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static addToDatabase(Landroidx/work/impl/WorkContinuationImpl;)Z
.locals 2
.param p0 # Landroidx/work/impl/WorkContinuationImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
.line 87
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->getWorkManagerImpl()Landroidx/work/impl/WorkManagerImpl;
move-result-object v0
.line 88
invoke-virtual {v0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v1
.line 89
invoke-virtual {v1}, Landroidx/room/RoomDatabase;->beginTransaction()V
.line 92
:try_start_0
invoke-virtual {v0}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v0
.line 91
invoke-static {v1, v0, p0}, Landroidx/work/impl/utils/EnqueueUtilsKt;->checkContentUriTriggerWorkerLimits(Landroidx/work/impl/WorkDatabase;Landroidx/work/Configuration;Landroidx/work/impl/WorkContinuationImpl;)V
.line 93
invoke-static {p0}, Landroidx/work/impl/utils/EnqueueRunnable;->processContinuation(Landroidx/work/impl/WorkContinuationImpl;)Z
move-result p0
.line 94
invoke-virtual {v1}, Landroidx/room/RoomDatabase;->setTransactionSuccessful()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 97
invoke-virtual {v1}, Landroidx/room/RoomDatabase;->endTransaction()V
return p0
:catchall_0
move-exception p0
invoke-virtual {v1}, Landroidx/room/RoomDatabase;->endTransaction()V
.line 98
throw p0
.end method
.method public static enqueue(Landroidx/work/impl/WorkContinuationImpl;)V
.locals 3
.param p0 # Landroidx/work/impl/WorkContinuationImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 70
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->hasCycles()Z
move-result v0
if-nez v0, :cond_1
.line 74
invoke-static {p0}, Landroidx/work/impl/utils/EnqueueRunnable;->addToDatabase(Landroidx/work/impl/WorkContinuationImpl;)Z
move-result v0
if-eqz v0, :cond_0
.line 76
invoke-static {p0}, Landroidx/work/impl/utils/EnqueueRunnable;->scheduleWorkInBackground(Landroidx/work/impl/WorkContinuationImpl;)V
:cond_0
return-void
.line 71
:cond_1
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "WorkContinuation has cycles ("
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string p0, ")"
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method private static enqueueContinuation(Landroidx/work/impl/WorkContinuationImpl;)Z
.locals 5
.param p0 # Landroidx/work/impl/WorkContinuationImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 134
invoke-static {p0}, Landroidx/work/impl/WorkContinuationImpl;->prerequisitesFor(Landroidx/work/impl/WorkContinuationImpl;)Ljava/util/Set;
move-result-object v0
.line 137
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->getWorkManagerImpl()Landroidx/work/impl/WorkManagerImpl;
move-result-object v1
.line 138
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->getWork()Ljava/util/List;
move-result-object v2
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/String;
.line 139
invoke-interface {v0, v3}, Ljava/util/Set;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object v0
check-cast v0, [Ljava/lang/String;
.line 140
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->getName()Ljava/lang/String;
move-result-object v3
.line 141
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->getExistingWorkPolicy()Landroidx/work/ExistingWorkPolicy;
move-result-object v4
.line 136
invoke-static {v1, v2, v0, v3, v4}, Landroidx/work/impl/utils/EnqueueRunnable;->enqueueWorkWithPrerequisites(Landroidx/work/impl/WorkManagerImpl;Ljava/util/List;[Ljava/lang/String;Ljava/lang/String;Landroidx/work/ExistingWorkPolicy;)Z
move-result v0
.line 143
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->markEnqueued()V
return v0
.end method
.method private static enqueueWorkWithPrerequisites(Landroidx/work/impl/WorkManagerImpl;Ljava/util/List;[Ljava/lang/String;Ljava/lang/String;Landroidx/work/ExistingWorkPolicy;)Z
.locals 18
.param p1 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkManagerImpl;",
"Ljava/util/List<",
"+",
"Landroidx/work/WorkRequest;",
">;[",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Landroidx/work/ExistingWorkPolicy;",
")Z"
}
.end annotation
move-object/from16 v0, p2
move-object/from16 v1, p3
move-object/from16 v2, p4
.line 161
invoke-virtual/range {p0 .. p0}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v3
invoke-virtual {v3}, Landroidx/work/Configuration;->getClock()Landroidx/work/Clock;
move-result-object v3
invoke-interface {v3}, Landroidx/work/Clock;->currentTimeMillis()J
move-result-wide v3
.line 162
invoke-virtual/range {p0 .. p0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v5
const/4 v6, 0x1
const/4 v7, 0x0
if-eqz v0, :cond_0
.line 164
array-length v8, v0
if-lez v8, :cond_0
move v8, v6
goto :goto_0
:cond_0
move v8, v7
:goto_0
if-eqz v8, :cond_5
.line 173
array-length v9, v0
move v11, v6
move v10, v7
move v12, v10
move v13, v12
:goto_1
if-ge v10, v9, :cond_6
aget-object v14, v0, v10
.line 174
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v15
invoke-interface {v15, v14}, Landroidx/work/impl/model/WorkSpecDao;->getWorkSpec(Ljava/lang/String;)Landroidx/work/impl/model/WorkSpec;
move-result-object v15
if-nez v15, :cond_1
.line 176
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v0
sget-object v1, Landroidx/work/impl/utils/EnqueueRunnable;->TAG:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Prerequisite "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v3, " doesn\'t exist; not enqueuing"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v1, v2}, Landroidx/work/Logger;->error(Ljava/lang/String;Ljava/lang/String;)V
return v7
.line 180
:cond_1
iget-object v14, v15, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
.line 181
sget-object v15, Landroidx/work/WorkInfo$State;->SUCCEEDED:Landroidx/work/WorkInfo$State;
if-ne v14, v15, :cond_2
move v15, v6
goto :goto_2
:cond_2
move v15, v7
:goto_2
and-int/2addr v11, v15
.line 182
sget-object v15, Landroidx/work/WorkInfo$State;->FAILED:Landroidx/work/WorkInfo$State;
if-ne v14, v15, :cond_3
move v13, v6
goto :goto_3
.line 184
:cond_3
sget-object v15, Landroidx/work/WorkInfo$State;->CANCELLED:Landroidx/work/WorkInfo$State;
if-ne v14, v15, :cond_4
move v12, v6
:cond_4
:goto_3
add-int/lit8 v10, v10, 0x1
goto :goto_1
:cond_5
move v11, v6
move v12, v7
move v13, v12
.line 190
:cond_6
invoke-static/range {p3 .. p3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v9
xor-int/2addr v9, v6
if-eqz v9, :cond_15
if-nez v8, :cond_15
.line 198
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v10
invoke-interface {v10, v1}, Landroidx/work/impl/model/WorkSpecDao;->getWorkSpecIdAndStatesForName(Ljava/lang/String;)Ljava/util/List;
move-result-object v10
.line 200
invoke-interface {v10}, Ljava/util/List;->isEmpty()Z
move-result v14
if-nez v14, :cond_15
.line 202
sget-object v14, Landroidx/work/ExistingWorkPolicy;->APPEND:Landroidx/work/ExistingWorkPolicy;
if-eq v2, v14, :cond_7
sget-object v14, Landroidx/work/ExistingWorkPolicy;->APPEND_OR_REPLACE:Landroidx/work/ExistingWorkPolicy;
if-ne v2, v14, :cond_8
:cond_7
move-object/from16 v14, p0
goto :goto_5
.line 236
:cond_8
sget-object v14, Landroidx/work/ExistingWorkPolicy;->KEEP:Landroidx/work/ExistingWorkPolicy;
if-ne v2, v14, :cond_b
.line 237
invoke-interface {v10}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_9
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v14
if-eqz v14, :cond_b
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v14
check-cast v14, Landroidx/work/impl/model/WorkSpec$IdAndState;
.line 238
iget-object v14, v14, Landroidx/work/impl/model/WorkSpec$IdAndState;->state:Landroidx/work/WorkInfo$State;
sget-object v15, Landroidx/work/WorkInfo$State;->ENQUEUED:Landroidx/work/WorkInfo$State;
if-eq v14, v15, :cond_a
sget-object v15, Landroidx/work/WorkInfo$State;->RUNNING:Landroidx/work/WorkInfo$State;
if-ne v14, v15, :cond_9
:cond_a
return v7
:cond_b
move-object/from16 v14, p0
.line 249
invoke-static {v1, v14}, Landroidx/work/impl/utils/CancelWorkRunnable;->forNameInline(Ljava/lang/String;Landroidx/work/impl/WorkManagerImpl;)V
.line 256
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v2
.line 257
invoke-interface {v10}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v10
:goto_4
invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
move-result v15
if-eqz v15, :cond_16
invoke-interface {v10}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v15
check-cast v15, Landroidx/work/impl/model/WorkSpec$IdAndState;
.line 258
iget-object v15, v15, Landroidx/work/impl/model/WorkSpec$IdAndState;->id:Ljava/lang/String;
invoke-interface {v2, v15}, Landroidx/work/impl/model/WorkSpecDao;->delete(Ljava/lang/String;)V
goto :goto_4
.line 203
:goto_5
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->dependencyDao()Landroidx/work/impl/model/DependencyDao;
move-result-object v8
.line 204
new-instance v15, Ljava/util/ArrayList;
invoke-direct {v15}, Ljava/util/ArrayList;-><init>()V
.line 205
invoke-interface {v10}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v10
:goto_6
invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
move-result v16
if-eqz v16, :cond_10
invoke-interface {v10}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v16
move-object/from16 v6, v16
check-cast v6, Landroidx/work/impl/model/WorkSpec$IdAndState;
.line 206
iget-object v7, v6, Landroidx/work/impl/model/WorkSpec$IdAndState;->id:Ljava/lang/String;
invoke-interface {v8, v7}, Landroidx/work/impl/model/DependencyDao;->hasDependents(Ljava/lang/String;)Z
move-result v7
if-nez v7, :cond_f
.line 207
iget-object v7, v6, Landroidx/work/impl/model/WorkSpec$IdAndState;->state:Landroidx/work/WorkInfo$State;
move-object/from16 v17, v8
sget-object v8, Landroidx/work/WorkInfo$State;->SUCCEEDED:Landroidx/work/WorkInfo$State;
if-ne v7, v8, :cond_c
const/4 v8, 0x1
goto :goto_7
:cond_c
const/4 v8, 0x0
:goto_7
and-int/2addr v8, v11
.line 208
sget-object v11, Landroidx/work/WorkInfo$State;->FAILED:Landroidx/work/WorkInfo$State;
if-ne v7, v11, :cond_d
const/4 v13, 0x1
goto :goto_8
.line 210
:cond_d
sget-object v11, Landroidx/work/WorkInfo$State;->CANCELLED:Landroidx/work/WorkInfo$State;
if-ne v7, v11, :cond_e
const/4 v12, 0x1
.line 213
:cond_e
:goto_8
iget-object v6, v6, Landroidx/work/impl/model/WorkSpec$IdAndState;->id:Ljava/lang/String;
invoke-interface {v15, v6}, Ljava/util/List;->add(Ljava/lang/Object;)Z
move v11, v8
goto :goto_9
:cond_f
move-object/from16 v17, v8
:goto_9
move-object/from16 v8, v17
const/4 v6, 0x1
const/4 v7, 0x0
goto :goto_6
.line 216
:cond_10
sget-object v6, Landroidx/work/ExistingWorkPolicy;->APPEND_OR_REPLACE:Landroidx/work/ExistingWorkPolicy;
if-ne v2, v6, :cond_13
if-nez v12, :cond_11
if-eqz v13, :cond_13
.line 219
:cond_11
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v2
.line 221
invoke-interface {v2, v1}, Landroidx/work/impl/model/WorkSpecDao;->getWorkSpecIdAndStatesForName(Ljava/lang/String;)Ljava/util/List;
move-result-object v6
.line 222
invoke-interface {v6}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v6
:goto_a
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v7
if-eqz v7, :cond_12
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/work/impl/model/WorkSpec$IdAndState;
.line 223
iget-object v7, v7, Landroidx/work/impl/model/WorkSpec$IdAndState;->id:Ljava/lang/String;
invoke-interface {v2, v7}, Landroidx/work/impl/model/WorkSpecDao;->delete(Ljava/lang/String;)V
goto :goto_a
.line 226
:cond_12
invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List;
move-result-object v15
const/4 v12, 0x0
const/4 v13, 0x0
.line 231
:cond_13
invoke-interface {v15, v0}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object v0
check-cast v0, [Ljava/lang/String;
.line 232
array-length v2, v0
if-lez v2, :cond_14
const/4 v8, 0x1
goto :goto_b
:cond_14
const/4 v8, 0x0
:goto_b
const/4 v6, 0x0
goto :goto_c
:cond_15
move-object/from16 v14, p0
goto :goto_b
.line 264
:cond_16
:goto_c
invoke-interface/range {p1 .. p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_d
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v7
if-eqz v7, :cond_1d
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/work/WorkRequest;
.line 265
invoke-virtual {v7}, Landroidx/work/WorkRequest;->getWorkSpec()Landroidx/work/impl/model/WorkSpec;
move-result-object v10
if-eqz v8, :cond_19
if-nez v11, :cond_19
if-eqz v13, :cond_17
.line 269
sget-object v15, Landroidx/work/WorkInfo$State;->FAILED:Landroidx/work/WorkInfo$State;
iput-object v15, v10, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
goto :goto_e
:cond_17
if-eqz v12, :cond_18
.line 271
sget-object v15, Landroidx/work/WorkInfo$State;->CANCELLED:Landroidx/work/WorkInfo$State;
iput-object v15, v10, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
goto :goto_e
.line 273
:cond_18
sget-object v15, Landroidx/work/WorkInfo$State;->BLOCKED:Landroidx/work/WorkInfo$State;
iput-object v15, v10, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
goto :goto_e
.line 279
:cond_19
iput-wide v3, v10, Landroidx/work/impl/model/WorkSpec;->lastEnqueueTime:J
.line 283
:goto_e
iget-object v15, v10, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
move-object/from16 p1, v2
sget-object v2, Landroidx/work/WorkInfo$State;->ENQUEUED:Landroidx/work/WorkInfo$State;
if-ne v15, v2, :cond_1a
const/4 v6, 0x1
.line 287
:cond_1a
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v2
.line 289
invoke-virtual/range {p0 .. p0}, Landroidx/work/impl/WorkManagerImpl;->getSchedulers()Ljava/util/List;
move-result-object v15
.line 288
invoke-static {v15, v10}, Landroidx/work/impl/utils/EnqueueUtilsKt;->wrapWorkSpecIfNeeded(Ljava/util/List;Landroidx/work/impl/model/WorkSpec;)Landroidx/work/impl/model/WorkSpec;
move-result-object v10
.line 287
invoke-interface {v2, v10}, Landroidx/work/impl/model/WorkSpecDao;->insertWorkSpec(Landroidx/work/impl/model/WorkSpec;)V
if-eqz v8, :cond_1b
.line 295
array-length v2, v0
const/4 v10, 0x0
:goto_f
if-ge v10, v2, :cond_1b
aget-object v15, v0, v10
move-object/from16 v17, v0
.line 296
new-instance v0, Landroidx/work/impl/model/Dependency;
move/from16 p2, v2
invoke-virtual {v7}, Landroidx/work/WorkRequest;->getStringId()Ljava/lang/String;
move-result-object v2
invoke-direct {v0, v2, v15}, Landroidx/work/impl/model/Dependency;-><init>(Ljava/lang/String;Ljava/lang/String;)V
.line 297
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->dependencyDao()Landroidx/work/impl/model/DependencyDao;
move-result-object v2
invoke-interface {v2, v0}, Landroidx/work/impl/model/DependencyDao;->insertDependency(Landroidx/work/impl/model/Dependency;)V
add-int/lit8 v10, v10, 0x1
move/from16 v2, p2
move-object/from16 v0, v17
goto :goto_f
:cond_1b
move-object/from16 v17, v0
.line 301
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->workTagDao()Landroidx/work/impl/model/WorkTagDao;
move-result-object v0
invoke-virtual {v7}, Landroidx/work/WorkRequest;->getStringId()Ljava/lang/String;
move-result-object v2
invoke-virtual {v7}, Landroidx/work/WorkRequest;->getTags()Ljava/util/Set;
move-result-object v10
invoke-interface {v0, v2, v10}, Landroidx/work/impl/model/WorkTagDao;->insertTags(Ljava/lang/String;Ljava/util/Set;)V
if-eqz v9, :cond_1c
.line 303
invoke-virtual {v5}, Landroidx/work/impl/WorkDatabase;->workNameDao()Landroidx/work/impl/model/WorkNameDao;
move-result-object v0
new-instance v2, Landroidx/work/impl/model/WorkName;
invoke-virtual {v7}, Landroidx/work/WorkRequest;->getStringId()Ljava/lang/String;
move-result-object v7
invoke-direct {v2, v1, v7}, Landroidx/work/impl/model/WorkName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
invoke-interface {v0, v2}, Landroidx/work/impl/model/WorkNameDao;->insert(Landroidx/work/impl/model/WorkName;)V
:cond_1c
move-object/from16 v2, p1
move-object/from16 v0, v17
goto/16 :goto_d
:cond_1d
return v6
.end method
.method private static processContinuation(Landroidx/work/impl/WorkContinuationImpl;)Z
.locals 7
.param p0 # Landroidx/work/impl/WorkContinuationImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 115
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->getParents()Ljava/util/List;
move-result-object v0
const/4 v1, 0x0
if-eqz v0, :cond_1
.line 117
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/work/impl/WorkContinuationImpl;
.line 120
invoke-virtual {v2}, Landroidx/work/impl/WorkContinuationImpl;->isEnqueued()Z
move-result v3
if-nez v3, :cond_0
.line 121
invoke-static {v2}, Landroidx/work/impl/utils/EnqueueRunnable;->processContinuation(Landroidx/work/impl/WorkContinuationImpl;)Z
move-result v2
or-int/2addr v1, v2
goto :goto_0
.line 123
:cond_0
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v3
sget-object v4, Landroidx/work/impl/utils/EnqueueRunnable;->TAG:Ljava/lang/String;
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "Already enqueued work ids ("
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v6, ", "
.line 125
invoke-virtual {v2}, Landroidx/work/impl/WorkContinuationImpl;->getIds()Ljava/util/List;
move-result-object v2
invoke-static {v6, v2}, Landroid/text/TextUtils;->join(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, ")"
invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
.line 123
invoke-virtual {v3, v4, v2}, Landroidx/work/Logger;->warning(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_0
.line 129
:cond_1
invoke-static {p0}, Landroidx/work/impl/utils/EnqueueRunnable;->enqueueContinuation(Landroidx/work/impl/WorkContinuationImpl;)Z
move-result p0
or-int/2addr p0, v1
return p0
.end method
.method public static scheduleWorkInBackground(Landroidx/work/impl/WorkContinuationImpl;)V
.locals 2
.param p0 # Landroidx/work/impl/WorkContinuationImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
.line 106
invoke-virtual {p0}, Landroidx/work/impl/WorkContinuationImpl;->getWorkManagerImpl()Landroidx/work/impl/WorkManagerImpl;
move-result-object p0
.line 108
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getConfiguration()Landroidx/work/Configuration;
move-result-object v0
.line 109
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getWorkDatabase()Landroidx/work/impl/WorkDatabase;
move-result-object v1
.line 110
invoke-virtual {p0}, Landroidx/work/impl/WorkManagerImpl;->getSchedulers()Ljava/util/List;
move-result-object p0
.line 107
invoke-static {v0, v1, p0}, Landroidx/work/impl/Schedulers;->schedule(Landroidx/work/Configuration;Landroidx/work/impl/WorkDatabase;Ljava/util/List;)V
return-void
.end method

View File

@@ -0,0 +1,617 @@
.class public final Landroidx/work/impl/utils/EnqueueUtilsKt;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nEnqueueUtils.kt\nKotlin\n*S Kotlin\n*F\n+ 1 EnqueueUtils.kt\nandroidx/work/impl/utils/EnqueueUtilsKt\n+ 2 _Collections.kt\nkotlin/collections/CollectionsKt___CollectionsKt\n+ 3 fake.kt\nkotlin/jvm/internal/FakeKt\n+ 4 Data_.kt\nandroidx/work/Data\n*L\n1#1,168:1\n1774#2,4:169\n1747#2,3:177\n1#3:173\n229#4:174\n229#4:175\n229#4:176\n*S KotlinDebug\n*F\n+ 1 EnqueueUtils.kt\nandroidx/work/impl/utils/EnqueueUtilsKt\n*L\n45#1:169,4\n140#1:177,3\n71#1:174\n72#1:175\n73#1:176\n*E\n"
}
.end annotation
# static fields
.field public static final ARGUMENT_REMOTE_LISTENABLE_WORKER_NAME:Ljava/lang/String; = "androidx.work.multiprocess.RemoteListenableDelegatingWorker.ARGUMENT_REMOTE_LISTENABLE_WORKER_NAME"
.field public static final ARGUMENT_SERVICE_CLASS_NAME:Ljava/lang/String; = "androidx.work.impl.workers.RemoteListenableWorker.ARGUMENT_CLASS_NAME"
.field public static final ARGUMENT_SERVICE_PACKAGE_NAME:Ljava/lang/String; = "androidx.work.impl.workers.RemoteListenableWorker.ARGUMENT_PACKAGE_NAME"
.field public static final REMOTE_DELEGATING_LISTENABLE_WORKER_CLASS_NAME:Ljava/lang/String; = "androidx.work.multiprocess.RemoteListenableDelegatingWorker"
# direct methods
.method public static final checkContentUriTriggerWorkerLimits(Landroidx/work/impl/WorkDatabase;Landroidx/work/Configuration;Landroidx/work/impl/WorkContinuationImpl;)V
.locals 7
const-string v0, "workDatabase"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "configuration"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "continuation"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const/4 v0, 0x1
new-array v1, v0, [Landroidx/work/impl/WorkContinuationImpl;
const/4 v2, 0x0
aput-object p2, v1, v2
.line 41
invoke-static {v1}, Lkotlin/collections/CollectionsKt;->mutableListOf([Ljava/lang/Object;)Ljava/util/List;
move-result-object p2
move v1, v2
.line 43
:cond_0
:goto_0
move-object v3, p2
check-cast v3, Ljava/util/Collection;
invoke-interface {v3}, Ljava/util/Collection;->isEmpty()Z
move-result v3
xor-int/2addr v3, v0
if-eqz v3, :cond_4
.line 44
invoke-static {p2}, Lkotlin/collections/CollectionsKt;->removeLast(Ljava/util/List;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/work/impl/WorkContinuationImpl;
.line 45
invoke-virtual {v3}, Landroidx/work/impl/WorkContinuationImpl;->getWork()Ljava/util/List;
move-result-object v4
const-string v5, "current.work"
invoke-static {v4, v5}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
check-cast v4, Ljava/lang/Iterable;
.line 1774
instance-of v5, v4, Ljava/util/Collection;
if-eqz v5, :cond_1
move-object v5, v4
check-cast v5, Ljava/util/Collection;
invoke-interface {v5}, Ljava/util/Collection;->isEmpty()Z
move-result v5
if-eqz v5, :cond_1
move v5, v2
goto :goto_2
.line 1776
:cond_1
invoke-interface {v4}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v4
move v5, v2
:cond_2
:goto_1
invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z
move-result v6
if-eqz v6, :cond_3
invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroidx/work/WorkRequest;
.line 45
invoke-virtual {v6}, Landroidx/work/WorkRequest;->getWorkSpec()Landroidx/work/impl/model/WorkSpec;
move-result-object v6
iget-object v6, v6, Landroidx/work/impl/model/WorkSpec;->constraints:Landroidx/work/Constraints;
invoke-virtual {v6}, Landroidx/work/Constraints;->hasContentUriTriggers()Z
move-result v6
if-eqz v6, :cond_2
add-int/lit8 v5, v5, 0x1
if-gez v5, :cond_2
.line 1776
invoke-static {}, Lkotlin/collections/CollectionsKt;->throwCountOverflow()V
goto :goto_1
:cond_3
:goto_2
add-int/2addr v1, v5
.line 46
invoke-virtual {v3}, Landroidx/work/impl/WorkContinuationImpl;->getParents()Ljava/util/List;
move-result-object v3
if-eqz v3, :cond_0
check-cast v3, Ljava/util/Collection;
invoke-interface {p2, v3}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
goto :goto_0
:cond_4
if-nez v1, :cond_5
return-void
.line 49
:cond_5
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p0
invoke-interface {p0}, Landroidx/work/impl/model/WorkSpecDao;->countNonFinishedContentUriTriggerWorkers()I
move-result p0
.line 50
invoke-virtual {p1}, Landroidx/work/Configuration;->getContentUriTriggerWorkersLimit()I
move-result p1
add-int p2, p0, v1
if-gt p2, p1, :cond_6
return-void
.line 52
:cond_6
new-instance p2, Ljava/lang/IllegalArgumentException;
.line 53
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Too many workers with contentUriTriggers are enqueued:\ncontentUriTrigger workers limit: "
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, ";\nalready enqueued count: "
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p0, ";\ncurrent enqueue operation count: "
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p0, ".\nTo address this issue you can: \n1. enqueue less workers or batch some of workers with content uri triggers together;\n2. increase limit via Configuration.Builder.setContentUriTriggerWorkersLimit;\nPlease beware that workers with content uri triggers immediately occupy slots in JobScheduler so no updates to content uris are missed."
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
.line 52
invoke-direct {p2, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p2
.end method
.method public static final tryDelegateConstrainedWorkSpec(Landroidx/work/impl/model/WorkSpec;)Landroidx/work/impl/model/WorkSpec;
.locals 35
move-object/from16 v0, p0
const-string v1, "workSpec"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 93
iget-object v1, v0, Landroidx/work/impl/model/WorkSpec;->constraints:Landroidx/work/Constraints;
.line 94
iget-object v2, v0, Landroidx/work/impl/model/WorkSpec;->workerClassName:Ljava/lang/String;
const-class v3, Landroidx/work/impl/workers/ConstraintTrackingWorker;
.line 102
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v4
invoke-static {v2, v4}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_1
.line 105
invoke-virtual {v1}, Landroidx/work/Constraints;->requiresBatteryNotLow()Z
move-result v4
if-nez v4, :cond_0
invoke-virtual {v1}, Landroidx/work/Constraints;->requiresStorageNotLow()Z
move-result v1
if-eqz v1, :cond_1
.line 108
:cond_0
new-instance v1, Landroidx/work/Data$Builder;
invoke-direct {v1}, Landroidx/work/Data$Builder;-><init>()V
.line 109
iget-object v4, v0, Landroidx/work/impl/model/WorkSpec;->input:Landroidx/work/Data;
invoke-virtual {v1, v4}, Landroidx/work/Data$Builder;->putAll(Landroidx/work/Data;)Landroidx/work/Data$Builder;
move-result-object v1
const-string v4, "androidx.work.impl.workers.ConstraintTrackingWorker.ARGUMENT_CLASS_NAME"
.line 110
invoke-virtual {v1, v4, v2}, Landroidx/work/Data$Builder;->putString(Ljava/lang/String;Ljava/lang/String;)Landroidx/work/Data$Builder;
move-result-object v1
.line 111
invoke-virtual {v1}, Landroidx/work/Data$Builder;->build()Landroidx/work/Data;
move-result-object v5
.line 114
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v4
move-object v3, v4
const/4 v1, 0x0
const/4 v2, 0x0
const-string v6, "name"
invoke-static {v4, v6}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
const/4 v4, 0x0
const/4 v6, 0x0
const-wide/16 v7, 0x0
const-wide/16 v9, 0x0
const-wide/16 v11, 0x0
const/4 v13, 0x0
const/4 v14, 0x0
const/4 v15, 0x0
const-wide/16 v16, 0x0
const-wide/16 v18, 0x0
const-wide/16 v20, 0x0
const-wide/16 v22, 0x0
const/16 v24, 0x0
const/16 v25, 0x0
const/16 v26, 0x0
const/16 v27, 0x0
const-wide/16 v28, 0x0
const/16 v30, 0x0
const/16 v31, 0x0
const/16 v32, 0x0
const v33, 0xffffeb
const/16 v34, 0x0
move-object/from16 v0, p0
.line 112
invoke-static/range {v0 .. v34}, Landroidx/work/impl/model/WorkSpec;->copy$default(Landroidx/work/impl/model/WorkSpec;Ljava/lang/String;Landroidx/work/WorkInfo$State;Ljava/lang/String;Ljava/lang/String;Landroidx/work/Data;Landroidx/work/Data;JJJLandroidx/work/Constraints;ILandroidx/work/BackoffPolicy;JJJJZLandroidx/work/OutOfQuotaPolicy;IIJIILjava/lang/String;ILjava/lang/Object;)Landroidx/work/impl/model/WorkSpec;
move-result-object v0
:cond_1
return-object v0
.end method
.method public static final tryDelegateRemoteListenableWorker(Landroidx/work/impl/model/WorkSpec;)Landroidx/work/impl/model/WorkSpec;
.locals 35
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
move-object/from16 v0, p0
const-string v1, "workSpec"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 71
iget-object v1, v0, Landroidx/work/impl/model/WorkSpec;->input:Landroidx/work/Data;
const-string v2, "androidx.work.multiprocess.RemoteListenableDelegatingWorker.ARGUMENT_REMOTE_LISTENABLE_WORKER_NAME"
const-class v3, Ljava/lang/String;
.line 229
invoke-virtual {v1, v2, v3}, Landroidx/work/Data;->hasKeyWithValueOfType(Ljava/lang/String;Ljava/lang/Class;)Z
move-result v1
.line 72
iget-object v4, v0, Landroidx/work/impl/model/WorkSpec;->input:Landroidx/work/Data;
const-string v5, "androidx.work.impl.workers.RemoteListenableWorker.ARGUMENT_PACKAGE_NAME"
.line 229
invoke-virtual {v4, v5, v3}, Landroidx/work/Data;->hasKeyWithValueOfType(Ljava/lang/String;Ljava/lang/Class;)Z
move-result v4
.line 73
iget-object v5, v0, Landroidx/work/impl/model/WorkSpec;->input:Landroidx/work/Data;
const-string v6, "androidx.work.impl.workers.RemoteListenableWorker.ARGUMENT_CLASS_NAME"
.line 229
invoke-virtual {v5, v6, v3}, Landroidx/work/Data;->hasKeyWithValueOfType(Ljava/lang/String;Ljava/lang/Class;)Z
move-result v3
if-nez v1, :cond_0
if-eqz v4, :cond_0
if-eqz v3, :cond_0
.line 75
iget-object v1, v0, Landroidx/work/impl/model/WorkSpec;->workerClassName:Ljava/lang/String;
.line 77
new-instance v3, Landroidx/work/Data$Builder;
invoke-direct {v3}, Landroidx/work/Data$Builder;-><init>()V
.line 78
iget-object v4, v0, Landroidx/work/impl/model/WorkSpec;->input:Landroidx/work/Data;
invoke-virtual {v3, v4}, Landroidx/work/Data$Builder;->putAll(Landroidx/work/Data;)Landroidx/work/Data$Builder;
move-result-object v3
.line 79
invoke-virtual {v3, v2, v1}, Landroidx/work/Data$Builder;->putString(Ljava/lang/String;Ljava/lang/String;)Landroidx/work/Data$Builder;
move-result-object v1
.line 80
invoke-virtual {v1}, Landroidx/work/Data$Builder;->build()Landroidx/work/Data;
move-result-object v5
const/4 v1, 0x0
const/4 v2, 0x0
const-string v3, "androidx.work.multiprocess.RemoteListenableDelegatingWorker"
const/4 v4, 0x0
const/4 v6, 0x0
const-wide/16 v7, 0x0
const-wide/16 v9, 0x0
const-wide/16 v11, 0x0
const/4 v13, 0x0
const/4 v14, 0x0
const/4 v15, 0x0
const-wide/16 v16, 0x0
const-wide/16 v18, 0x0
const-wide/16 v20, 0x0
const-wide/16 v22, 0x0
const/16 v24, 0x0
const/16 v25, 0x0
const/16 v26, 0x0
const/16 v27, 0x0
const-wide/16 v28, 0x0
const/16 v30, 0x0
const/16 v31, 0x0
const/16 v32, 0x0
const v33, 0xffffeb
const/16 v34, 0x0
move-object/from16 v0, p0
.line 82
invoke-static/range {v0 .. v34}, Landroidx/work/impl/model/WorkSpec;->copy$default(Landroidx/work/impl/model/WorkSpec;Ljava/lang/String;Landroidx/work/WorkInfo$State;Ljava/lang/String;Ljava/lang/String;Landroidx/work/Data;Landroidx/work/Data;JJJLandroidx/work/Constraints;ILandroidx/work/BackoffPolicy;JJJJZLandroidx/work/OutOfQuotaPolicy;IIJIILjava/lang/String;ILjava/lang/Object;)Landroidx/work/impl/model/WorkSpec;
move-result-object v0
:cond_0
return-object v0
.end method
.method private static final usesScheduler(Ljava/util/List;Ljava/lang/String;)Z
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"+",
"Landroidx/work/impl/Scheduler;",
">;",
"Ljava/lang/String;",
")Z"
}
.end annotation
const/4 v0, 0x0
.line 139
:try_start_0
invoke-static {p1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object p1
.line 140
check-cast p0, Ljava/lang/Iterable;
.line 1747
instance-of v1, p0, Ljava/util/Collection;
if-eqz v1, :cond_0
move-object v1, p0
check-cast v1, Ljava/util/Collection;
invoke-interface {v1}, Ljava/util/Collection;->isEmpty()Z
move-result v1
if-eqz v1, :cond_0
goto :goto_0
.line 1748
:cond_0
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/work/impl/Scheduler;
.line 140
invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {p1, v1}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v1
:try_end_0
.catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_0
if-eqz v1, :cond_1
const/4 v0, 0x1
:catch_0
:cond_2
:goto_0
return v0
.end method
.method public static final wrapWorkSpecIfNeeded(Ljava/util/List;Landroidx/work/impl/model/WorkSpec;)Landroidx/work/impl/model/WorkSpec;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"+",
"Landroidx/work/impl/Scheduler;",
">;",
"Landroidx/work/impl/model/WorkSpec;",
")",
"Landroidx/work/impl/model/WorkSpec;"
}
.end annotation
const-string v0, "schedulers"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string p0, "workSpec"
invoke-static {p1, p0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 125
invoke-static {p1}, Landroidx/work/impl/utils/EnqueueUtilsKt;->tryDelegateRemoteListenableWorker(Landroidx/work/impl/model/WorkSpec;)Landroidx/work/impl/model/WorkSpec;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/ForceStopRunnable$$ExternalSyntheticApiModelOutline0;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/app/ActivityManager;Ljava/lang/String;II)Ljava/util/List;
.locals 0
.line 0
invoke-virtual {p0, p1, p2, p3}, Landroid/app/ActivityManager;->getHistoricalProcessExitReasons(Ljava/lang/String;II)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,14 @@
.class public abstract synthetic Landroidx/work/impl/utils/ForceStopRunnable$$ExternalSyntheticApiModelOutline1;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Ljava/lang/Object;)Landroid/app/ApplicationExitInfo;
.locals 0
.line 0
check-cast p0, Landroid/app/ApplicationExitInfo;
return-object p0
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/ForceStopRunnable$$ExternalSyntheticApiModelOutline2;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/app/ApplicationExitInfo;)I
.locals 0
.line 0
invoke-virtual {p0}, Landroid/app/ApplicationExitInfo;->getReason()I
move-result p0
return p0
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/ForceStopRunnable$$ExternalSyntheticApiModelOutline3;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/app/ApplicationExitInfo;)J
.locals 2
.line 0
invoke-virtual {p0}, Landroid/app/ApplicationExitInfo;->getTimestamp()J
move-result-wide v0
return-wide v0
.end method

View File

@@ -0,0 +1,97 @@
.class public Landroidx/work/impl/utils/ForceStopRunnable$BroadcastReceiver;
.super Landroid/content/BroadcastReceiver;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/ForceStopRunnable;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "BroadcastReceiver"
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 1
const-string v0, "ForceStopRunnable$Rcvr"
.line 413
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Landroidx/work/impl/utils/ForceStopRunnable$BroadcastReceiver;->TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 412
invoke-direct {p0}, Landroid/content/BroadcastReceiver;-><init>()V
return-void
.end method
# virtual methods
.method public onReceive(Landroid/content/Context;Landroid/content/Intent;)V
.locals 2
.param p1 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/content/Intent;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
if-eqz p2, :cond_0
.line 420
invoke-virtual {p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object p2
const-string v0, "ACTION_FORCE_STOP_RESCHEDULE"
.line 421
invoke-virtual {v0, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p2
if-eqz p2, :cond_0
.line 422
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object p2
sget-object v0, Landroidx/work/impl/utils/ForceStopRunnable$BroadcastReceiver;->TAG:Ljava/lang/String;
const-string v1, "Rescheduling alarm that keeps track of force-stops."
invoke-virtual {p2, v0, v1}, Landroidx/work/Logger;->verbose(Ljava/lang/String;Ljava/lang/String;)V
.line 425
invoke-static {p1}, Landroidx/work/impl/utils/ForceStopRunnable;->setAlarm(Landroid/content/Context;)V
:cond_0
return-void
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,38 @@
.class public final synthetic Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Callable;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/utils/IdGenerator;
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/utils/IdGenerator;)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/utils/IdGenerator;
return-void
.end method
# virtual methods
.method public final call()Ljava/lang/Object;
.locals 1
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/utils/IdGenerator;
invoke-static {v0}, Landroidx/work/impl/utils/IdGenerator;->$r8$lambda$fIl4yTd4RSvtLPTyoZbhi4q3Rnk(Landroidx/work/impl/utils/IdGenerator;)Ljava/lang/Integer;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,50 @@
.class public final synthetic Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Callable;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/utils/IdGenerator;
.field public final synthetic f$1:I
.field public final synthetic f$2:I
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/utils/IdGenerator;II)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;->f$0:Landroidx/work/impl/utils/IdGenerator;
iput p2, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;->f$1:I
iput p3, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;->f$2:I
return-void
.end method
# virtual methods
.method public final call()Ljava/lang/Object;
.locals 3
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;->f$0:Landroidx/work/impl/utils/IdGenerator;
iget v1, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;->f$1:I
iget v2, p0, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;->f$2:I
invoke-static {v0, v1, v2}, Landroidx/work/impl/utils/IdGenerator;->$r8$lambda$LyUC9fmKDw6AhARQq6V7VCdkafU(Landroidx/work/impl/utils/IdGenerator;II)Ljava/lang/Integer;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,158 @@
.class public final Landroidx/work/impl/utils/IdGenerator;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field private final workDatabase:Landroidx/work/impl/WorkDatabase;
# direct methods
.method public static synthetic $r8$lambda$LyUC9fmKDw6AhARQq6V7VCdkafU(Landroidx/work/impl/utils/IdGenerator;II)Ljava/lang/Integer;
.locals 0
.line 0
invoke-static {p0, p1, p2}, Landroidx/work/impl/utils/IdGenerator;->nextJobSchedulerIdWithRange$lambda$0(Landroidx/work/impl/utils/IdGenerator;II)Ljava/lang/Integer;
move-result-object p0
return-object p0
.end method
.method public static synthetic $r8$lambda$fIl4yTd4RSvtLPTyoZbhi4q3Rnk(Landroidx/work/impl/utils/IdGenerator;)Ljava/lang/Integer;
.locals 0
.line 0
invoke-static {p0}, Landroidx/work/impl/utils/IdGenerator;->nextAlarmManagerId$lambda$1(Landroidx/work/impl/utils/IdGenerator;)Ljava/lang/Integer;
move-result-object p0
return-object p0
.end method
.method public constructor <init>(Landroidx/work/impl/WorkDatabase;)V
.locals 1
const-string v0, "workDatabase"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 31
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/IdGenerator;->workDatabase:Landroidx/work/impl/WorkDatabase;
return-void
.end method
.method private static final nextAlarmManagerId$lambda$1(Landroidx/work/impl/utils/IdGenerator;)Ljava/lang/Integer;
.locals 1
.line 50
iget-object p0, p0, Landroidx/work/impl/utils/IdGenerator;->workDatabase:Landroidx/work/impl/WorkDatabase;
const-string v0, "next_alarm_manager_id"
invoke-static {p0, v0}, Landroidx/work/impl/utils/IdGeneratorKt;->access$nextId(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;)I
move-result p0
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
return-object p0
.end method
.method private static final nextJobSchedulerIdWithRange$lambda$0(Landroidx/work/impl/utils/IdGenerator;II)Ljava/lang/Integer;
.locals 2
.line 36
iget-object v0, p0, Landroidx/work/impl/utils/IdGenerator;->workDatabase:Landroidx/work/impl/WorkDatabase;
const-string v1, "next_job_scheduler_id"
invoke-static {v0, v1}, Landroidx/work/impl/utils/IdGeneratorKt;->access$nextId(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;)I
move-result v0
if-gt p1, v0, :cond_0
if-gt v0, p2, :cond_0
move p1, v0
goto :goto_0
.line 40
:cond_0
iget-object p0, p0, Landroidx/work/impl/utils/IdGenerator;->workDatabase:Landroidx/work/impl/WorkDatabase;
add-int/lit8 p2, p1, 0x1
invoke-static {p0, v1, p2}, Landroidx/work/impl/utils/IdGeneratorKt;->access$updatePreference(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;I)V
.line 42
:goto_0
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public final nextAlarmManagerId()I
.locals 2
iget-object v0, p0, Landroidx/work/impl/utils/IdGenerator;->workDatabase:Landroidx/work/impl/WorkDatabase;
.line 49
new-instance v1, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda0;
invoke-direct {v1, p0}, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda0;-><init>(Landroidx/work/impl/utils/IdGenerator;)V
invoke-virtual {v0, v1}, Landroidx/room/RoomDatabase;->runInTransaction(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
move-result-object v0
const-string v1, "workDatabase.runInTransa\u2026NAGER_ID_KEY) }\n )"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
check-cast v0, Ljava/lang/Number;
invoke-virtual {v0}, Ljava/lang/Number;->intValue()I
move-result v0
return v0
.end method
.method public final nextJobSchedulerIdWithRange(II)I
.locals 2
iget-object v0, p0, Landroidx/work/impl/utils/IdGenerator;->workDatabase:Landroidx/work/impl/WorkDatabase;
.line 34
new-instance v1, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;
invoke-direct {v1, p0, p1, p2}, Landroidx/work/impl/utils/IdGenerator$$ExternalSyntheticLambda1;-><init>(Landroidx/work/impl/utils/IdGenerator;II)V
invoke-virtual {v0, v1}, Landroidx/room/RoomDatabase;->runInTransaction(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
move-result-object p1
const-string p2, "workDatabase.runInTransa\u2026d\n }\n )"
invoke-static {p1, p2}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p1, Ljava/lang/Number;
invoke-virtual {p1}, Ljava/lang/Number;->intValue()I
move-result p1
return p1
.end method

View File

@@ -0,0 +1,219 @@
.class public final Landroidx/work/impl/utils/IdGeneratorKt;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final INITIAL_ID:I = 0x0
.field public static final NEXT_ALARM_MANAGER_ID_KEY:Ljava/lang/String; = "next_alarm_manager_id"
.field public static final NEXT_JOB_SCHEDULER_ID_KEY:Ljava/lang/String; = "next_job_scheduler_id"
.field public static final PREFERENCE_FILE_KEY:Ljava/lang/String; = "androidx.work.util.id"
# direct methods
.method public static final synthetic access$nextId(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;)I
.locals 0
.line 1
invoke-static {p0, p1}, Landroidx/work/impl/utils/IdGeneratorKt;->nextId(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;)I
move-result p0
return p0
.end method
.method public static final synthetic access$updatePreference(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;I)V
.locals 0
.line 1
invoke-static {p0, p1, p2}, Landroidx/work/impl/utils/IdGeneratorKt;->updatePreference(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;I)V
return-void
.end method
.method public static final migrateLegacyIdGenerator(Landroid/content/Context;Landroidx/sqlite/db/SupportSQLiteDatabase;)V
.locals 8
const-string v0, "INSERT OR REPLACE INTO `Preference` (`key`, `long_value`) VALUES (@key, @long_value)"
const-string v1, "context"
invoke-static {p0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v1, "sqLiteDatabase"
invoke-static {p1, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v1, "androidx.work.util.id"
const/4 v2, 0x0
.line 78
invoke-virtual {p0, v1, v2}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences;
move-result-object p0
const-string v1, "next_job_scheduler_id"
.line 82
invoke-interface {p0, v1}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z
move-result v3
if-nez v3, :cond_0
.line 83
invoke-interface {p0, v1}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z
move-result v3
if-eqz v3, :cond_1
.line 85
:cond_0
invoke-interface {p0, v1, v2}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I
move-result v3
const-string v4, "next_alarm_manager_id"
.line 86
invoke-interface {p0, v4, v2}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I
move-result v5
.line 87
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->beginTransaction()V
const/4 v6, 0x2
:try_start_0
new-array v7, v6, [Ljava/lang/Object;
aput-object v1, v7, v2
.line 89
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
const/4 v3, 0x1
aput-object v1, v7, v3
invoke-interface {p1, v0, v7}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;[Ljava/lang/Object;)V
new-array v1, v6, [Ljava/lang/Object;
aput-object v4, v1, v2
.line 92
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
aput-object v2, v1, v3
.line 90
invoke-interface {p1, v0, v1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;[Ljava/lang/Object;)V
.line 95
invoke-interface {p0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
move-result-object p0
invoke-interface {p0}, Landroid/content/SharedPreferences$Editor;->clear()Landroid/content/SharedPreferences$Editor;
move-result-object p0
invoke-interface {p0}, Landroid/content/SharedPreferences$Editor;->apply()V
.line 96
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->setTransactionSuccessful()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 98
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->endTransaction()V
:cond_1
return-void
:catchall_0
move-exception p0
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->endTransaction()V
throw p0
.end method
.method private static final nextId(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;)I
.locals 4
.line 56
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object v0
invoke-interface {v0, p1}, Landroidx/work/impl/model/PreferenceDao;->getLongValue(Ljava/lang/String;)Ljava/lang/Long;
move-result-object v0
const/4 v1, 0x0
if-eqz v0, :cond_0
.line 57
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v2
long-to-int v0, v2
goto :goto_0
:cond_0
move v0, v1
:goto_0
const v2, 0x7fffffff
if-ne v0, v2, :cond_1
goto :goto_1
:cond_1
add-int/lit8 v1, v0, 0x1
.line 59
:goto_1
invoke-static {p0, p1, v1}, Landroidx/work/impl/utils/IdGeneratorKt;->updatePreference(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;I)V
return v0
.end method
.method private static final updatePreference(Landroidx/work/impl/WorkDatabase;Ljava/lang/String;I)V
.locals 3
.line 64
invoke-virtual {p0}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object p0
new-instance v0, Landroidx/work/impl/model/Preference;
int-to-long v1, p2
invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p2
invoke-direct {v0, p1, p2}, Landroidx/work/impl/model/Preference;-><init>(Ljava/lang/String;Ljava/lang/Long;)V
invoke-interface {p0, v0}, Landroidx/work/impl/model/PreferenceDao;->insertPreference(Landroidx/work/impl/model/Preference;)V
return-void
.end method

View File

@@ -0,0 +1,126 @@
.class Landroidx/work/impl/utils/LiveDataUtils$1$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/LiveDataUtils$1;->onChanged(Ljava/lang/Object;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/work/impl/utils/LiveDataUtils$1;
.field final synthetic val$input:Ljava/lang/Object;
# direct methods
.method public constructor <init>(Landroidx/work/impl/utils/LiveDataUtils$1;Ljava/lang/Object;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/work/impl/utils/LiveDataUtils$1$1;->this$0:Landroidx/work/impl/utils/LiveDataUtils$1;
iput-object p2, p0, Landroidx/work/impl/utils/LiveDataUtils$1$1;->val$input:Ljava/lang/Object;
.line 68
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 4
iget-object v0, p0, Landroidx/work/impl/utils/LiveDataUtils$1$1;->this$0:Landroidx/work/impl/utils/LiveDataUtils$1;
.line 71
iget-object v0, v0, Landroidx/work/impl/utils/LiveDataUtils$1;->val$lock:Ljava/lang/Object;
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/work/impl/utils/LiveDataUtils$1$1;->this$0:Landroidx/work/impl/utils/LiveDataUtils$1;
.line 72
iget-object v1, v1, Landroidx/work/impl/utils/LiveDataUtils$1;->val$mappingMethod:Landroidx/arch/core/util/Function;
iget-object v2, p0, Landroidx/work/impl/utils/LiveDataUtils$1$1;->val$input:Ljava/lang/Object;
invoke-interface {v1, v2}, Landroidx/arch/core/util/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
iget-object v2, p0, Landroidx/work/impl/utils/LiveDataUtils$1$1;->this$0:Landroidx/work/impl/utils/LiveDataUtils$1;
.line 73
iget-object v3, v2, Landroidx/work/impl/utils/LiveDataUtils$1;->mCurrentOutput:Ljava/lang/Object;
if-nez v3, :cond_0
if-eqz v1, :cond_0
.line 74
iput-object v1, v2, Landroidx/work/impl/utils/LiveDataUtils$1;->mCurrentOutput:Ljava/lang/Object;
.line 75
iget-object v2, v2, Landroidx/work/impl/utils/LiveDataUtils$1;->val$outputLiveData:Landroidx/lifecycle/MediatorLiveData;
invoke-virtual {v2, v1}, Landroidx/lifecycle/MutableLiveData;->postValue(Ljava/lang/Object;)V
goto :goto_0
:catchall_0
move-exception v1
goto :goto_1
:cond_0
if-eqz v3, :cond_1
.line 77
invoke-virtual {v3, v1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_1
iget-object v2, p0, Landroidx/work/impl/utils/LiveDataUtils$1$1;->this$0:Landroidx/work/impl/utils/LiveDataUtils$1;
.line 78
iput-object v1, v2, Landroidx/work/impl/utils/LiveDataUtils$1;->mCurrentOutput:Ljava/lang/Object;
.line 79
iget-object v2, v2, Landroidx/work/impl/utils/LiveDataUtils$1;->val$outputLiveData:Landroidx/lifecycle/MediatorLiveData;
invoke-virtual {v2, v1}, Landroidx/lifecycle/MutableLiveData;->postValue(Ljava/lang/Object;)V
.line 81
:cond_1
:goto_0
monitor-exit v0
return-void
:goto_1
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method

View File

@@ -0,0 +1,97 @@
.class Landroidx/work/impl/utils/LiveDataUtils$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/lifecycle/Observer;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/LiveDataUtils;->dedupedMappedLiveDataFor(Landroidx/lifecycle/LiveData;Landroidx/arch/core/util/Function;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;)Landroidx/lifecycle/LiveData;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Landroidx/lifecycle/Observer<",
"TIn;>;"
}
.end annotation
# instance fields
.field mCurrentOutput:Ljava/lang/Object;
.annotation system Ldalvik/annotation/Signature;
value = {
"TOut;"
}
.end annotation
.end field
.field final synthetic val$lock:Ljava/lang/Object;
.field final synthetic val$mappingMethod:Landroidx/arch/core/util/Function;
.field final synthetic val$outputLiveData:Landroidx/lifecycle/MediatorLiveData;
.field final synthetic val$workTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
# direct methods
.method public constructor <init>(Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/lang/Object;Landroidx/arch/core/util/Function;Landroidx/lifecycle/MediatorLiveData;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/work/impl/utils/LiveDataUtils$1;->val$workTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
iput-object p2, p0, Landroidx/work/impl/utils/LiveDataUtils$1;->val$lock:Ljava/lang/Object;
iput-object p3, p0, Landroidx/work/impl/utils/LiveDataUtils$1;->val$mappingMethod:Landroidx/arch/core/util/Function;
iput-object p4, p0, Landroidx/work/impl/utils/LiveDataUtils$1;->val$outputLiveData:Landroidx/lifecycle/MediatorLiveData;
.line 62
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 p1, 0x0
iput-object p1, p0, Landroidx/work/impl/utils/LiveDataUtils$1;->mCurrentOutput:Ljava/lang/Object;
return-void
.end method
# virtual methods
.method public onChanged(Ljava/lang/Object;)V
.locals 2
.param p1 # Ljava/lang/Object;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(TIn;)V"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/LiveDataUtils$1;->val$workTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.line 68
new-instance v1, Landroidx/work/impl/utils/LiveDataUtils$1$1;
invoke-direct {v1, p0, p1}, Landroidx/work/impl/utils/LiveDataUtils$1$1;-><init>(Landroidx/work/impl/utils/LiveDataUtils$1;Ljava/lang/Object;)V
invoke-interface {v0, v1}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->executeOnTaskThread(Ljava/lang/Runnable;)V
return-void
.end method

View File

@@ -0,0 +1,83 @@
.class public Landroidx/work/impl/utils/LiveDataUtils;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 89
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static dedupedMappedLiveDataFor(Landroidx/lifecycle/LiveData;Landroidx/arch/core/util/Function;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;)Landroidx/lifecycle/LiveData;
.locals 3
.param p0 # Landroidx/lifecycle/LiveData;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroidx/arch/core/util/Function;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroid/annotation/SuppressLint;
value = {
"LambdaLast"
}
.end annotation
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<In:",
"Ljava/lang/Object;",
"Out:",
"Ljava/lang/Object;",
">(",
"Landroidx/lifecycle/LiveData<",
"TIn;>;",
"Landroidx/arch/core/util/Function<",
"TIn;TOut;>;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
")",
"Landroidx/lifecycle/LiveData<",
"TOut;>;"
}
.end annotation
.line 59
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
.line 60
new-instance v1, Landroidx/lifecycle/MediatorLiveData;
invoke-direct {v1}, Landroidx/lifecycle/MediatorLiveData;-><init>()V
.line 62
new-instance v2, Landroidx/work/impl/utils/LiveDataUtils$1;
invoke-direct {v2, p2, v0, p1, v1}, Landroidx/work/impl/utils/LiveDataUtils$1;-><init>(Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/lang/Object;Landroidx/arch/core/util/Function;Landroidx/lifecycle/MediatorLiveData;)V
invoke-virtual {v1, p0, v2}, Landroidx/lifecycle/MediatorLiveData;->addSource(Landroidx/lifecycle/LiveData;Landroidx/lifecycle/Observer;)V
return-object v1
.end method

View File

@@ -0,0 +1,58 @@
.class public final Landroidx/work/impl/utils/NetworkApi21;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
# direct methods
.method public static final getNetworkCapabilitiesCompat(Landroid/net/ConnectivityManager;Landroid/net/Network;)Landroid/net/NetworkCapabilities;
.locals 1
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 31
invoke-virtual {p0, p1}, Landroid/net/ConnectivityManager;->getNetworkCapabilities(Landroid/net/Network;)Landroid/net/NetworkCapabilities;
move-result-object p0
return-object p0
.end method
.method public static final hasCapabilityCompat(Landroid/net/NetworkCapabilities;I)Z
.locals 1
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 33
invoke-virtual {p0, p1}, Landroid/net/NetworkCapabilities;->hasCapability(I)Z
move-result p0
return p0
.end method
.method public static final unregisterNetworkCallbackCompat(Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager$NetworkCallback;)V
.locals 1
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "networkCallback"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 28
invoke-virtual {p0, p1}, Landroid/net/ConnectivityManager;->unregisterNetworkCallback(Landroid/net/ConnectivityManager$NetworkCallback;)V
return-void
.end method

View File

@@ -0,0 +1,26 @@
.class public final Landroidx/work/impl/utils/NetworkApi23;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x17
.end annotation
# direct methods
.method public static final getActiveNetworkCompat(Landroid/net/ConnectivityManager;)Landroid/net/Network;
.locals 1
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 24
invoke-virtual {p0}, Landroid/net/ConnectivityManager;->getActiveNetwork()Landroid/net/Network;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,28 @@
.class public final Landroidx/work/impl/utils/NetworkApi24;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x18
.end annotation
# direct methods
.method public static final registerDefaultNetworkCallbackCompat(Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager$NetworkCallback;)V
.locals 1
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "networkCallback"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 26
invoke-virtual {p0, p1}, Landroid/net/ConnectivityManager;->registerDefaultNetworkCallback(Landroid/net/ConnectivityManager$NetworkCallback;)V
return-void
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/NetworkRequest28$$ExternalSyntheticApiModelOutline0;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/net/NetworkRequest;I)Z
.locals 0
.line 0
invoke-virtual {p0, p1}, Landroid/net/NetworkRequest;->hasCapability(I)Z
move-result p0
return p0
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/NetworkRequest28$$ExternalSyntheticApiModelOutline1;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/net/NetworkRequest;I)Z
.locals 0
.line 0
invoke-virtual {p0, p1}, Landroid/net/NetworkRequest;->hasTransport(I)Z
move-result p0
return p0
.end method

View File

@@ -0,0 +1,202 @@
.class public final Landroidx/work/impl/utils/NetworkRequest28;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x1c
.end annotation
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nNetworkRequestCompat.kt\nKotlin\n*S Kotlin\n*F\n+ 1 NetworkRequestCompat.kt\nandroidx/work/impl/utils/NetworkRequest28\n+ 2 _Arrays.kt\nkotlin/collections/ArraysKt___ArraysKt\n*L\n1#1,145:1\n13600#2,2:146\n13600#2,2:148\n*S KotlinDebug\n*F\n+ 1 NetworkRequestCompat.kt\nandroidx/work/impl/utils/NetworkRequest28\n*L\n109#1:146,2\n122#1:148,2\n*E\n"
}
.end annotation
# static fields
.field public static final INSTANCE:Landroidx/work/impl/utils/NetworkRequest28;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Landroidx/work/impl/utils/NetworkRequest28;
invoke-direct {v0}, Landroidx/work/impl/utils/NetworkRequest28;-><init>()V
sput-object v0, Landroidx/work/impl/utils/NetworkRequest28;->INSTANCE:Landroidx/work/impl/utils/NetworkRequest28;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 98
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static final createNetworkRequest([I[I)Landroid/net/NetworkRequest;
.locals 10
const-string v0, "capabilities"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "transports"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 108
new-instance v0, Landroid/net/NetworkRequest$Builder;
invoke-direct {v0}, Landroid/net/NetworkRequest$Builder;-><init>()V
.line 13600
array-length v1, p0
const/4 v2, 0x0
move v3, v2
:goto_0
if-ge v3, v1, :cond_0
aget v4, p0, v3
.line 111
:try_start_0
invoke-virtual {v0, v4}, Landroid/net/NetworkRequest$Builder;->addCapability(I)Landroid/net/NetworkRequest$Builder;
:try_end_0
.catch Ljava/lang/IllegalArgumentException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_1
:catch_0
move-exception v5
.line 118
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v6
.line 119
sget-object v7, Landroidx/work/impl/utils/NetworkRequestCompat;->Companion:Landroidx/work/impl/utils/NetworkRequestCompat$Companion;
invoke-virtual {v7}, Landroidx/work/impl/utils/NetworkRequestCompat$Companion;->getTAG()Ljava/lang/String;
move-result-object v7
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v9, "Ignoring adding capability \'"
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v4, 0x27
invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v6, v7, v4, v5}, Landroidx/work/Logger;->warning(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
:goto_1
add-int/lit8 v3, v3, 0x1
goto :goto_0
.line 13600
:cond_0
array-length p0, p1
:goto_2
if-ge v2, p0, :cond_1
aget v1, p1, v2
.line 122
invoke-virtual {v0, v1}, Landroid/net/NetworkRequest$Builder;->addTransportType(I)Landroid/net/NetworkRequest$Builder;
add-int/lit8 v2, v2, 0x1
goto :goto_2
.line 123
:cond_1
invoke-virtual {v0}, Landroid/net/NetworkRequest$Builder;->build()Landroid/net/NetworkRequest;
move-result-object p0
const-string p1, "networkRequest.build()"
invoke-static {p0, p1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
return-object p0
.end method
# virtual methods
.method public final createNetworkRequestCompat$work_runtime_release([I[I)Landroidx/work/impl/utils/NetworkRequestCompat;
.locals 1
const-string v0, "capabilities"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "transports"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 130
new-instance v0, Landroidx/work/impl/utils/NetworkRequestCompat;
invoke-static {p1, p2}, Landroidx/work/impl/utils/NetworkRequest28;->createNetworkRequest([I[I)Landroid/net/NetworkRequest;
move-result-object p1
invoke-direct {v0, p1}, Landroidx/work/impl/utils/NetworkRequestCompat;-><init>(Ljava/lang/Object;)V
return-object v0
.end method
.method public final hasCapability$work_runtime_release(Landroid/net/NetworkRequest;I)Z
.locals 1
const-string v0, "request"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 101
invoke-static {p1, p2}, Landroidx/work/impl/utils/NetworkRequest28$$ExternalSyntheticApiModelOutline0;->m(Landroid/net/NetworkRequest;I)Z
move-result p1
return p1
.end method
.method public final hasTransport$work_runtime_release(Landroid/net/NetworkRequest;I)Z
.locals 1
const-string v0, "request"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 104
invoke-static {p1, p2}, Landroidx/work/impl/utils/NetworkRequest28$$ExternalSyntheticApiModelOutline1;->m(Landroid/net/NetworkRequest;I)Z
move-result p1
return p1
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/NetworkRequest30$$ExternalSyntheticApiModelOutline0;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/net/NetworkRequest;)Landroid/net/NetworkSpecifier;
.locals 0
.line 0
invoke-virtual {p0}, Landroid/net/NetworkRequest;->getNetworkSpecifier()Landroid/net/NetworkSpecifier;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,53 @@
.class public final Landroidx/work/impl/utils/NetworkRequest30;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x1e
.end annotation
# static fields
.field public static final INSTANCE:Landroidx/work/impl/utils/NetworkRequest30;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Landroidx/work/impl/utils/NetworkRequest30;
invoke-direct {v0}, Landroidx/work/impl/utils/NetworkRequest30;-><init>()V
sput-object v0, Landroidx/work/impl/utils/NetworkRequest30;->INSTANCE:Landroidx/work/impl/utils/NetworkRequest30;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 141
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final getNetworkSpecifier(Landroid/net/NetworkRequest;)Landroid/net/NetworkSpecifier;
.locals 1
const-string v0, "request"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 143
invoke-static {p1}, Landroidx/work/impl/utils/NetworkRequest30$$ExternalSyntheticApiModelOutline0;->m(Landroid/net/NetworkRequest;)Landroid/net/NetworkSpecifier;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/NetworkRequest31$$ExternalSyntheticApiModelOutline0;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/net/NetworkRequest;)[I
.locals 0
.line 0
invoke-virtual {p0}, Landroid/net/NetworkRequest;->getTransportTypes()[I
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,16 @@
.class public abstract synthetic Landroidx/work/impl/utils/NetworkRequest31$$ExternalSyntheticApiModelOutline1;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static bridge synthetic m(Landroid/net/NetworkRequest;)[I
.locals 0
.line 0
invoke-virtual {p0}, Landroid/net/NetworkRequest;->getCapabilities()[I
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,76 @@
.class final Landroidx/work/impl/utils/NetworkRequest31;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x1f
.end annotation
# static fields
.field public static final INSTANCE:Landroidx/work/impl/utils/NetworkRequest31;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Landroidx/work/impl/utils/NetworkRequest31;
invoke-direct {v0}, Landroidx/work/impl/utils/NetworkRequest31;-><init>()V
sput-object v0, Landroidx/work/impl/utils/NetworkRequest31;->INSTANCE:Landroidx/work/impl/utils/NetworkRequest31;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 134
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final capabilities(Landroid/net/NetworkRequest;)[I
.locals 1
const-string v0, "request"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 136
invoke-static {p1}, Landroidx/work/impl/utils/NetworkRequest31$$ExternalSyntheticApiModelOutline1;->m(Landroid/net/NetworkRequest;)[I
move-result-object p1
const-string v0, "request.capabilities"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
return-object p1
.end method
.method public final transportTypes(Landroid/net/NetworkRequest;)[I
.locals 1
const-string v0, "request"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 138
invoke-static {p1}, Landroidx/work/impl/utils/NetworkRequest31$$ExternalSyntheticApiModelOutline0;->m(Landroid/net/NetworkRequest;)[I
move-result-object p1
const-string v0, "request.transportTypes"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
return-object p1
.end method

View File

@@ -0,0 +1,47 @@
.class public final Landroidx/work/impl/utils/NetworkRequestCompat$Companion;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/NetworkRequestCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Companion"
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 27
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public synthetic constructor <init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 0
.line 0
invoke-direct {p0}, Landroidx/work/impl/utils/NetworkRequestCompat$Companion;-><init>()V
return-void
.end method
# virtual methods
.method public final getTAG()Ljava/lang/String;
.locals 1
.line 28
invoke-static {}, Landroidx/work/impl/utils/NetworkRequestCompat;->access$getTAG$cp()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,240 @@
.class public final Landroidx/work/impl/utils/NetworkRequestCompat;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/work/impl/utils/NetworkRequestCompat$Companion;
}
.end annotation
# static fields
.field public static final Companion:Landroidx/work/impl/utils/NetworkRequestCompat$Companion;
.field private static final TAG:Ljava/lang/String;
# instance fields
.field private final wrapped:Ljava/lang/Object;
# direct methods
.method static constructor <clinit>()V
.locals 2
new-instance v0, Landroidx/work/impl/utils/NetworkRequestCompat$Companion;
const/4 v1, 0x0
invoke-direct {v0, v1}, Landroidx/work/impl/utils/NetworkRequestCompat$Companion;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
sput-object v0, Landroidx/work/impl/utils/NetworkRequestCompat;->Companion:Landroidx/work/impl/utils/NetworkRequestCompat$Companion;
const-string v0, "NetworkRequestCompat"
.line 28
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "tagWithPrefix(\"NetworkRequestCompat\")"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
sput-object v0, Landroidx/work/impl/utils/NetworkRequestCompat;->TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>()V
.locals 2
.line 0
const/4 v0, 0x0
const/4 v1, 0x1
invoke-direct {p0, v0, v1, v0}, Landroidx/work/impl/utils/NetworkRequestCompat;-><init>(Ljava/lang/Object;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/Object;)V
.locals 0
.line 25
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
return-void
.end method
.method public synthetic constructor <init>(Ljava/lang/Object;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 0
and-int/lit8 p2, p2, 0x1
if-eqz p2, :cond_0
const/4 p1, 0x0
.line 25
:cond_0
invoke-direct {p0, p1}, Landroidx/work/impl/utils/NetworkRequestCompat;-><init>(Ljava/lang/Object;)V
return-void
.end method
.method public static final synthetic access$getTAG$cp()Ljava/lang/String;
.locals 1
sget-object v0, Landroidx/work/impl/utils/NetworkRequestCompat;->TAG:Ljava/lang/String;
return-object v0
.end method
.method public static synthetic copy$default(Landroidx/work/impl/utils/NetworkRequestCompat;Ljava/lang/Object;ILjava/lang/Object;)Landroidx/work/impl/utils/NetworkRequestCompat;
.locals 0
and-int/lit8 p2, p2, 0x1
if-eqz p2, :cond_0
iget-object p1, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
:cond_0
invoke-virtual {p0, p1}, Landroidx/work/impl/utils/NetworkRequestCompat;->copy(Ljava/lang/Object;)Landroidx/work/impl/utils/NetworkRequestCompat;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public final component1()Ljava/lang/Object;
.locals 1
iget-object v0, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
return-object v0
.end method
.method public final copy(Ljava/lang/Object;)Landroidx/work/impl/utils/NetworkRequestCompat;
.locals 1
new-instance v0, Landroidx/work/impl/utils/NetworkRequestCompat;
invoke-direct {v0, p1}, Landroidx/work/impl/utils/NetworkRequestCompat;-><init>(Ljava/lang/Object;)V
return-object v0
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 3
const/4 v0, 0x1
if-ne p0, p1, :cond_0
return v0
:cond_0
instance-of v1, p1, Landroidx/work/impl/utils/NetworkRequestCompat;
const/4 v2, 0x0
if-nez v1, :cond_1
return v2
:cond_1
check-cast p1, Landroidx/work/impl/utils/NetworkRequestCompat;
iget-object v1, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
iget-object p1, p1, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
invoke-static {v1, p1}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
if-nez p1, :cond_2
return v2
:cond_2
return v0
.end method
.method public final getNetworkRequest()Landroid/net/NetworkRequest;
.locals 1
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
.line 33
check-cast v0, Landroid/net/NetworkRequest;
return-object v0
.end method
.method public final getWrapped()Ljava/lang/Object;
.locals 1
iget-object v0, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
return-object v0
.end method
.method public hashCode()I
.locals 1
iget-object v0, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
if-nez v0, :cond_0
const/4 v0, 0x0
goto :goto_0
:cond_0
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v0
:goto_0
return v0
.end method
.method public toString()Ljava/lang/String;
.locals 2
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "NetworkRequestCompat(wrapped="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Landroidx/work/impl/utils/NetworkRequestCompat;->wrapped:Ljava/lang/Object;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x29
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,211 @@
.class public final Landroidx/work/impl/utils/NetworkRequestCompatKt;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nNetworkRequestCompat.kt\nKotlin\n*S Kotlin\n*F\n+ 1 NetworkRequestCompat.kt\nandroidx/work/impl/utils/NetworkRequestCompatKt\n+ 2 _Arrays.kt\nkotlin/collections/ArraysKt___ArraysKt\n*L\n1#1,145:1\n3819#2:146\n4337#2,2:147\n3819#2:149\n4337#2,2:150\n*S KotlinDebug\n*F\n+ 1 NetworkRequestCompat.kt\nandroidx/work/impl/utils/NetworkRequestCompatKt\n*L\n53#1:146\n53#1:147,2\n94#1:149\n94#1:150,2\n*E\n"
}
.end annotation
# direct methods
.method public static final getCapabilitiesCompat(Landroid/net/NetworkRequest;)[I
.locals 6
.annotation build Landroidx/annotation/RequiresApi;
value = 0x1c
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1f
if-lt v0, v1, :cond_0
.line 61
sget-object v0, Landroidx/work/impl/utils/NetworkRequest31;->INSTANCE:Landroidx/work/impl/utils/NetworkRequest31;
invoke-virtual {v0, p0}, Landroidx/work/impl/utils/NetworkRequest31;->capabilities(Landroid/net/NetworkRequest;)[I
move-result-object p0
goto :goto_1
:cond_0
const/16 v0, 0x1d
new-array v1, v0, [I
fill-array-data v1, :array_0
.line 3819
new-instance v2, Ljava/util/ArrayList;
invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
const/4 v3, 0x0
:goto_0
if-ge v3, v0, :cond_2
.line 4337
aget v4, v1, v3
.line 94
sget-object v5, Landroidx/work/impl/utils/NetworkRequest28;->INSTANCE:Landroidx/work/impl/utils/NetworkRequest28;
invoke-virtual {v5, p0, v4}, Landroidx/work/impl/utils/NetworkRequest28;->hasCapability$work_runtime_release(Landroid/net/NetworkRequest;I)Z
move-result v5
if-eqz v5, :cond_1
.line 4337
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
invoke-interface {v2, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
:cond_1
add-int/lit8 v3, v3, 0x1
goto :goto_0
.line 95
:cond_2
invoke-static {v2}, Lkotlin/collections/CollectionsKt;->toIntArray(Ljava/util/Collection;)[I
move-result-object p0
:goto_1
return-object p0
:array_0
.array-data 4
0x11
0x5
0x2
0xa
0x1d
0x13
0x3
0x20
0x7
0x4
0xc
0x17
0x0
0x21
0x14
0xb
0xd
0x12
0x15
0xf
0x23
0x22
0x8
0x1
0x19
0xe
0x10
0x6
0x9
.end array-data
.end method
.method public static final getTransportTypesCompat(Landroid/net/NetworkRequest;)[I
.locals 6
.annotation build Landroidx/annotation/RequiresApi;
value = 0x1c
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1f
if-lt v0, v1, :cond_0
.line 40
sget-object v0, Landroidx/work/impl/utils/NetworkRequest31;->INSTANCE:Landroidx/work/impl/utils/NetworkRequest31;
invoke-virtual {v0, p0}, Landroidx/work/impl/utils/NetworkRequest31;->transportTypes(Landroid/net/NetworkRequest;)[I
move-result-object p0
goto :goto_1
:cond_0
const/16 v0, 0x9
new-array v1, v0, [I
fill-array-data v1, :array_0
.line 3819
new-instance v2, Ljava/util/ArrayList;
invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
const/4 v3, 0x0
:goto_0
if-ge v3, v0, :cond_2
.line 4337
aget v4, v1, v3
.line 53
sget-object v5, Landroidx/work/impl/utils/NetworkRequest28;->INSTANCE:Landroidx/work/impl/utils/NetworkRequest28;
invoke-virtual {v5, p0, v4}, Landroidx/work/impl/utils/NetworkRequest28;->hasTransport$work_runtime_release(Landroid/net/NetworkRequest;I)Z
move-result v5
if-eqz v5, :cond_1
.line 4337
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
invoke-interface {v2, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
:cond_1
add-int/lit8 v3, v3, 0x1
goto :goto_0
.line 54
:cond_2
invoke-static {v2}, Lkotlin/collections/CollectionsKt;->toIntArray(Ljava/util/Collection;)[I
move-result-object p0
:goto_1
return-object p0
:array_0
.array-data 4
0x2
0x0
0x3
0x6
0x9
0x8
0x4
0x1
0x5
.end array-data
.end method

View File

@@ -0,0 +1,340 @@
.class public Landroidx/work/impl/utils/PackageManagerHelper;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field private static final TAG:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 1
const-string v0, "PackageManagerHelper"
.line 30
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Landroidx/work/impl/utils/PackageManagerHelper;->TAG:Ljava/lang/String;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 32
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static getComponentEnabledSetting(Landroid/content/Context;Ljava/lang/String;)I
.locals 2
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 100
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 101
new-instance v1, Landroid/content/ComponentName;
invoke-direct {v1, p0, p1}, Landroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/String;)V
.line 102
invoke-virtual {v0, v1}, Landroid/content/pm/PackageManager;->getComponentEnabledSetting(Landroid/content/ComponentName;)I
move-result p0
return p0
.end method
.method private static isComponentEnabled(IZ)Z
.locals 0
if-nez p0, :cond_0
return p1
:cond_0
const/4 p1, 0x1
if-ne p0, p1, :cond_1
goto :goto_0
:cond_1
const/4 p1, 0x0
:goto_0
return p1
.end method
.method public static isComponentExplicitlyEnabled(Landroid/content/Context;Ljava/lang/Class;)Z
.locals 0
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/Class;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/lang/Class<",
"*>;)Z"
}
.end annotation
.line 77
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p1
invoke-static {p0, p1}, Landroidx/work/impl/utils/PackageManagerHelper;->getComponentEnabledSetting(Landroid/content/Context;Ljava/lang/String;)I
move-result p0
const/4 p1, 0x0
.line 78
invoke-static {p0, p1}, Landroidx/work/impl/utils/PackageManagerHelper;->isComponentEnabled(IZ)Z
move-result p0
return p0
.end method
.method public static isComponentExplicitlyEnabled(Landroid/content/Context;Ljava/lang/String;)Z
.locals 0
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 90
invoke-static {p0, p1}, Landroidx/work/impl/utils/PackageManagerHelper;->getComponentEnabledSetting(Landroid/content/Context;Ljava/lang/String;)I
move-result p0
const/4 p1, 0x1
if-ne p0, p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
return p1
.end method
.method public static setComponentEnabled(Landroid/content/Context;Ljava/lang/Class;Z)V
.locals 5
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/Class;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/lang/Class<",
"*>;Z)V"
}
.end annotation
const-string v0, "disabled"
const-string v1, "enabled"
.line 48
:try_start_0
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v2
invoke-static {p0, v2}, Landroidx/work/impl/utils/PackageManagerHelper;->getComponentEnabledSetting(Landroid/content/Context;Ljava/lang/String;)I
move-result v2
const/4 v3, 0x0
.line 47
invoke-static {v2, v3}, Landroidx/work/impl/utils/PackageManagerHelper;->isComponentEnabled(IZ)Z
move-result v2
if-ne p2, v2, :cond_0
.line 51
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object p0
sget-object v2, Landroidx/work/impl/utils/PackageManagerHelper;->TAG:Ljava/lang/String;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Skipping component enablement for "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {p0, v2, v3}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
return-void
:catch_0
move-exception p0
goto :goto_2
.line 55
:cond_0
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v2
.line 56
new-instance v3, Landroid/content/ComponentName;
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v4
invoke-direct {v3, p0, v4}, Landroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/String;)V
const/4 p0, 0x1
if-eqz p2, :cond_1
move v4, p0
goto :goto_0
:cond_1
const/4 v4, 0x2
.line 57
:goto_0
invoke-virtual {v2, v3, v4, p0}, Landroid/content/pm/PackageManager;->setComponentEnabledSetting(Landroid/content/ComponentName;II)V
.line 63
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object p0
sget-object v2, Landroidx/work/impl/utils/PackageManagerHelper;->TAG:Ljava/lang/String;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
if-eqz p2, :cond_2
move-object v4, v1
goto :goto_1
:cond_2
move-object v4, v0
:goto_1
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {p0, v2, v3}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_3
.line 65
:goto_2
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v2
sget-object v3, Landroidx/work/impl/utils/PackageManagerHelper;->TAG:Ljava/lang/String;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
.line 66
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "could not be "
invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
if-eqz p2, :cond_3
move-object v0, v1
:cond_3
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
.line 65
invoke-virtual {v2, v3, p1, p0}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
:goto_3
return-void
.end method

View File

@@ -0,0 +1,31 @@
.class public final synthetic Landroidx/work/impl/utils/PreferenceUtils$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# direct methods
.method public synthetic constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.line 0
check-cast p1, Ljava/lang/Long;
invoke-static {p1}, Landroidx/work/impl/utils/PreferenceUtils;->$r8$lambda$UyK6eU6OR7Msfdi8SIXBOhplQoo(Ljava/lang/Long;)Ljava/lang/Long;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,425 @@
.class public Landroidx/work/impl/utils/PreferenceUtils;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# static fields
.field public static final CREATE_PREFERENCE:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS `Preference` (`key` TEXT NOT NULL, `long_value` INTEGER, PRIMARY KEY(`key`))"
.field public static final INSERT_PREFERENCE:Ljava/lang/String; = "INSERT OR REPLACE INTO `Preference` (`key`, `long_value`) VALUES (@key, @long_value)"
.field public static final KEY_LAST_CANCEL_ALL_TIME_MS:Ljava/lang/String; = "last_cancel_all_time_ms"
.field private static final KEY_LAST_FORCE_STOP_MS:Ljava/lang/String; = "last_force_stop_ms"
.field public static final KEY_RESCHEDULE_NEEDED:Ljava/lang/String; = "reschedule_needed"
.field public static final PREFERENCES_FILE_NAME:Ljava/lang/String; = "androidx.work.util.preferences"
# instance fields
.field private final mWorkDatabase:Landroidx/work/impl/WorkDatabase;
# direct methods
.method public static synthetic $r8$lambda$UyK6eU6OR7Msfdi8SIXBOhplQoo(Ljava/lang/Long;)Ljava/lang/Long;
.locals 0
.line 0
invoke-static {p0}, Landroidx/work/impl/utils/PreferenceUtils;->lambda$getLastCancelAllTimeMillisLiveData$0(Ljava/lang/Long;)Ljava/lang/Long;
move-result-object p0
return-object p0
.end method
.method public constructor <init>(Landroidx/work/impl/WorkDatabase;)V
.locals 0
.param p1 # Landroidx/work/impl/WorkDatabase;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 56
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
return-void
.end method
.method private static synthetic lambda$getLastCancelAllTimeMillisLiveData$0(Ljava/lang/Long;)Ljava/lang/Long;
.locals 2
if-eqz p0, :cond_0
.line 78
invoke-virtual {p0}, Ljava/lang/Long;->longValue()J
move-result-wide v0
goto :goto_0
:cond_0
const-wide/16 v0, 0x0
:goto_0
invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p0
return-object p0
.end method
.method public static migrateLegacyPreferences(Landroid/content/Context;Landroidx/sqlite/db/SupportSQLiteDatabase;)V
.locals 10
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroidx/sqlite/db/SupportSQLiteDatabase;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
const-string v0, "INSERT OR REPLACE INTO `Preference` (`key`, `long_value`) VALUES (@key, @long_value)"
const-string v1, "androidx.work.util.preferences"
const/4 v2, 0x0
.line 141
invoke-virtual {p0, v1, v2}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences;
move-result-object p0
const-string v1, "reschedule_needed"
.line 144
invoke-interface {p0, v1}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z
move-result v3
const-string v4, "last_cancel_all_time_ms"
if-nez v3, :cond_0
.line 145
invoke-interface {p0, v4}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z
move-result v3
if-eqz v3, :cond_2
:cond_0
const-wide/16 v5, 0x0
.line 147
invoke-interface {p0, v4, v5, v6}, Landroid/content/SharedPreferences;->getLong(Ljava/lang/String;J)J
move-result-wide v7
.line 148
invoke-interface {p0, v1, v2}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
move-result v3
if-eqz v3, :cond_1
const-wide/16 v5, 0x1
.line 150
:cond_1
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->beginTransaction()V
const/4 v3, 0x2
:try_start_0
new-array v9, v3, [Ljava/lang/Object;
aput-object v4, v9, v2
.line 154
invoke-static {v7, v8}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
const/4 v7, 0x1
aput-object v4, v9, v7
.line 153
invoke-interface {p1, v0, v9}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;[Ljava/lang/Object;)V
new-array v3, v3, [Ljava/lang/Object;
aput-object v1, v3, v2
.line 157
invoke-static {v5, v6}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v1
aput-object v1, v3, v7
.line 156
invoke-interface {p1, v0, v3}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;[Ljava/lang/Object;)V
.line 160
invoke-interface {p0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
move-result-object p0
.line 161
invoke-interface {p0}, Landroid/content/SharedPreferences$Editor;->clear()Landroid/content/SharedPreferences$Editor;
move-result-object p0
.line 162
invoke-interface {p0}, Landroid/content/SharedPreferences$Editor;->apply()V
.line 164
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->setTransactionSuccessful()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 166
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->endTransaction()V
:cond_2
return-void
:catchall_0
move-exception p0
invoke-interface {p1}, Landroidx/sqlite/db/SupportSQLiteDatabase;->endTransaction()V
.line 167
throw p0
.end method
# virtual methods
.method public getLastCancelAllTimeMillis()J
.locals 2
iget-object v0, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 65
invoke-virtual {v0}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object v0
const-string v1, "last_cancel_all_time_ms"
invoke-interface {v0, v1}, Landroidx/work/impl/model/PreferenceDao;->getLongValue(Ljava/lang/String;)Ljava/lang/Long;
move-result-object v0
if-eqz v0, :cond_0
.line 67
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v0
goto :goto_0
:cond_0
const-wide/16 v0, 0x0
:goto_0
return-wide v0
.end method
.method public getLastCancelAllTimeMillisLiveData()Landroidx/lifecycle/LiveData;
.locals 2
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Landroidx/lifecycle/LiveData<",
"Ljava/lang/Long;",
">;"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 77
invoke-virtual {v0}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object v0
const-string v1, "last_cancel_all_time_ms"
invoke-interface {v0, v1}, Landroidx/work/impl/model/PreferenceDao;->getObservableLongValue(Ljava/lang/String;)Landroidx/lifecycle/LiveData;
move-result-object v0
.line 78
new-instance v1, Landroidx/work/impl/utils/PreferenceUtils$$ExternalSyntheticLambda0;
invoke-direct {v1}, Landroidx/work/impl/utils/PreferenceUtils$$ExternalSyntheticLambda0;-><init>()V
invoke-static {v0, v1}, Landroidx/lifecycle/Transformations;->map(Landroidx/lifecycle/LiveData;Lkotlin/jvm/functions/Function1;)Landroidx/lifecycle/LiveData;
move-result-object v0
return-object v0
.end method
.method public getLastForceStopEventMillis()J
.locals 2
iget-object v0, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 122
invoke-virtual {v0}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object v0
const-string v1, "last_force_stop_ms"
invoke-interface {v0, v1}, Landroidx/work/impl/model/PreferenceDao;->getLongValue(Ljava/lang/String;)Ljava/lang/Long;
move-result-object v0
if-eqz v0, :cond_0
.line 124
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v0
return-wide v0
:cond_0
const-wide/16 v0, 0x0
return-wide v0
.end method
.method public getNeedsReschedule()Z
.locals 4
iget-object v0, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 96
invoke-virtual {v0}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object v0
const-string v1, "reschedule_needed"
invoke-interface {v0, v1}, Landroidx/work/impl/model/PreferenceDao;->getLongValue(Ljava/lang/String;)Ljava/lang/Long;
move-result-object v0
if-eqz v0, :cond_0
.line 97
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v0
const-wide/16 v2, 0x1
cmp-long v0, v0, v2
if-nez v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.end method
.method public setLastCancelAllTimeMillis(J)V
.locals 2
.line 87
new-instance v0, Landroidx/work/impl/model/Preference;
const-string v1, "last_cancel_all_time_ms"
invoke-static {p1, p2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p1
invoke-direct {v0, v1, p1}, Landroidx/work/impl/model/Preference;-><init>(Ljava/lang/String;Ljava/lang/Long;)V
iget-object p1, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 88
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object p1
invoke-interface {p1, v0}, Landroidx/work/impl/model/PreferenceDao;->insertPreference(Landroidx/work/impl/model/Preference;)V
return-void
.end method
.method public setLastForceStopEventMillis(J)V
.locals 2
.line 113
new-instance v0, Landroidx/work/impl/model/Preference;
const-string v1, "last_force_stop_ms"
invoke-static {p1, p2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p1
invoke-direct {v0, v1, p1}, Landroidx/work/impl/model/Preference;-><init>(Ljava/lang/String;Ljava/lang/Long;)V
iget-object p1, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 114
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object p1
invoke-interface {p1, v0}, Landroidx/work/impl/model/PreferenceDao;->insertPreference(Landroidx/work/impl/model/Preference;)V
return-void
.end method
.method public setNeedsReschedule(Z)V
.locals 2
.line 104
new-instance v0, Landroidx/work/impl/model/Preference;
const-string v1, "reschedule_needed"
invoke-direct {v0, v1, p1}, Landroidx/work/impl/model/Preference;-><init>(Ljava/lang/String;Z)V
iget-object p1, p0, Landroidx/work/impl/utils/PreferenceUtils;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 105
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->preferenceDao()Landroidx/work/impl/model/PreferenceDao;
move-result-object p1
invoke-interface {p1, v0}, Landroidx/work/impl/model/PreferenceDao;->insertPreference(Landroidx/work/impl/model/Preference;)V
return-void
.end method

View File

@@ -0,0 +1,254 @@
.class public final Landroidx/work/impl/utils/ProcessUtils;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nProcessUtils.kt\nKotlin\n*S Kotlin\n*F\n+ 1 ProcessUtils.kt\nandroidx/work/impl/utils/ProcessUtils\n+ 2 fake.kt\nkotlin/jvm/internal/FakeKt\n*L\n1#1,73:1\n1#2:74\n*E\n"
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 2
const-string v0, "ProcessUtils"
.line 31
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "tagWithPrefix(\"ProcessUtils\")"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
sput-object v0, Landroidx/work/impl/utils/ProcessUtils;->TAG:Ljava/lang/String;
return-void
.end method
.method private static final getProcessName(Landroid/content/Context;)Ljava/lang/String;
.locals 5
.annotation build Landroid/annotation/SuppressLint;
value = {
"PrivateApi",
"DiscouragedPrivateApi"
}
.end annotation
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1c
if-lt v0, v1, :cond_0
.line 46
sget-object p0, Landroidx/work/impl/utils/Api28Impl;->INSTANCE:Landroidx/work/impl/utils/Api28Impl;
invoke-virtual {p0}, Landroidx/work/impl/utils/Api28Impl;->getProcessName()Ljava/lang/String;
move-result-object p0
return-object p0
:cond_0
const/4 v0, 0x0
:try_start_0
const-string v1, "android.app.ActivityThread"
const-class v2, Landroidx/work/WorkManager;
.line 51
invoke-virtual {v2}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v2
const/4 v3, 0x0
invoke-static {v1, v3, v2}, Ljava/lang/Class;->forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
move-result-object v1
const-string v2, "currentProcessName"
new-array v4, v3, [Ljava/lang/Class;
.line 53
invoke-virtual {v1, v2, v4}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v1
const/4 v2, 0x1
.line 54
invoke-virtual {v1, v2}, Ljava/lang/reflect/AccessibleObject;->setAccessible(Z)V
new-array v2, v3, [Ljava/lang/Object;
.line 55
invoke-virtual {v1, v0, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
invoke-static {v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNull(Ljava/lang/Object;)V
.line 57
instance-of v2, v1, Ljava/lang/String;
if-eqz v2, :cond_1
check-cast v1, Ljava/lang/String;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
return-object v1
:catchall_0
move-exception v1
.line 59
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v2
sget-object v3, Landroidx/work/impl/utils/ProcessUtils;->TAG:Ljava/lang/String;
const-string v4, "Unable to check ActivityThread for processName"
invoke-virtual {v2, v3, v4, v1}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
.line 63
:cond_1
invoke-static {}, Landroid/os/Process;->myPid()I
move-result v1
const-string v2, "activity"
.line 64
invoke-virtual {p0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
const-string v2, "null cannot be cast to non-null type android.app.ActivityManager"
invoke-static {p0, v2}, Lkotlin/jvm/internal/Intrinsics;->checkNotNull(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p0, Landroid/app/ActivityManager;
.line 65
invoke-virtual {p0}, Landroid/app/ActivityManager;->getRunningAppProcesses()Ljava/util/List;
move-result-object p0
if-eqz p0, :cond_4
check-cast p0, Ljava/lang/Iterable;
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_2
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_3
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
move-object v3, v2
check-cast v3, Landroid/app/ActivityManager$RunningAppProcessInfo;
iget v3, v3, Landroid/app/ActivityManager$RunningAppProcessInfo;->pid:I
if-ne v3, v1, :cond_2
goto :goto_0
:cond_3
move-object v2, v0
:goto_0
check-cast v2, Landroid/app/ActivityManager$RunningAppProcessInfo;
if-eqz v2, :cond_4
iget-object v0, v2, Landroid/app/ActivityManager$RunningAppProcessInfo;->processName:Ljava/lang/String;
:cond_4
return-object v0
.end method
.method public static final isDefaultProcess(Landroid/content/Context;Landroidx/work/Configuration;)Z
.locals 2
const-string v0, "context"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "configuration"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 35
invoke-static {p0}, Landroidx/work/impl/utils/ProcessUtils;->getProcessName(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 36
invoke-virtual {p1}, Landroidx/work/Configuration;->getDefaultProcessName()Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_1
invoke-interface {v1}, Ljava/lang/CharSequence;->length()I
move-result v1
if-nez v1, :cond_0
goto :goto_0
.line 37
:cond_0
invoke-virtual {p1}, Landroidx/work/Configuration;->getDefaultProcessName()Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p0
goto :goto_1
.line 39
:cond_1
:goto_0
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object p0
iget-object p0, p0, Landroid/content/pm/ApplicationInfo;->processName:Ljava/lang/String;
invoke-static {v0, p0}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p0
:goto_1
return p0
.end method

View File

@@ -0,0 +1,70 @@
.class final Landroidx/work/impl/utils/PruneWorkRunnableKt$pruneWork$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/PruneWorkRunnableKt;->pruneWork(Landroidx/work/impl/WorkDatabase;Landroidx/work/Configuration;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;)Landroidx/work/Operation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function0;"
}
.end annotation
# instance fields
.field final synthetic $this_pruneWork:Landroidx/work/impl/WorkDatabase;
# direct methods
.method public constructor <init>(Landroidx/work/impl/WorkDatabase;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/PruneWorkRunnableKt$pruneWork$1;->$this_pruneWork:Landroidx/work/impl/WorkDatabase;
const/4 p1, 0x0
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke()Ljava/lang/Object;
.locals 1
.line 33
invoke-virtual {p0}, Landroidx/work/impl/utils/PruneWorkRunnableKt$pruneWork$1;->invoke()V
sget-object v0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
return-object v0
.end method
.method public final invoke()V
.locals 1
iget-object v0, p0, Landroidx/work/impl/utils/PruneWorkRunnableKt$pruneWork$1;->$this_pruneWork:Landroidx/work/impl/WorkDatabase;
.line 38
invoke-virtual {v0}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object v0
invoke-interface {v0}, Landroidx/work/impl/model/WorkSpecDao;->pruneFinishedWorkWithZeroDependentsIgnoringKeepForAtLeast()V
return-void
.end method

View File

@@ -0,0 +1,48 @@
.class public final Landroidx/work/impl/utils/PruneWorkRunnableKt;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static final pruneWork(Landroidx/work/impl/WorkDatabase;Landroidx/work/Configuration;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;)Landroidx/work/Operation;
.locals 1
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "configuration"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "executor"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 34
invoke-virtual {p1}, Landroidx/work/Configuration;->getTracer()Landroidx/work/Tracer;
move-result-object p1
.line 36
invoke-interface {p2}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object p2
const-string v0, "executor.serialTaskExecutor"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
.line 33
new-instance v0, Landroidx/work/impl/utils/PruneWorkRunnableKt$pruneWork$1;
invoke-direct {v0, p0}, Landroidx/work/impl/utils/PruneWorkRunnableKt$pruneWork$1;-><init>(Landroidx/work/impl/WorkDatabase;)V
const-string p0, "PruneWork"
invoke-static {p1, p0, p2, v0}, Landroidx/work/OperationKt;->launchOperation(Landroidx/work/Tracer;Ljava/lang/String;Ljava/util/concurrent/Executor;Lkotlin/jvm/functions/Function0;)Landroidx/work/Operation;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,438 @@
.class public final Landroidx/work/impl/utils/RawQueries;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nRawQueries.kt\nKotlin\n*S Kotlin\n*F\n+ 1 RawQueries.kt\nandroidx/work/impl/utils/RawQueries\n+ 2 _Collections.kt\nkotlin/collections/CollectionsKt___CollectionsKt\n+ 3 ArraysJVM.kt\nkotlin/collections/ArraysKt__ArraysJVMKt\n+ 4 fake.kt\nkotlin/jvm/internal/FakeKt\n*L\n1#1,73:1\n1549#2:74\n1620#2,3:75\n1549#2:78\n1620#2,3:79\n37#3,2:82\n1#4:84\n*S KotlinDebug\n*F\n+ 1 RawQueries.kt\nandroidx/work/impl/utils/RawQueries\n*L\n35#1:74\n35#1:75,3\n43#1:78\n43#1:79,3\n64#1:82,2\n*E\n"
}
.end annotation
# direct methods
.method private static final bindings(Ljava/lang/StringBuilder;I)V
.locals 9
if-gtz p1, :cond_0
return-void
.line 71
:cond_0
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, p1}, Ljava/util/ArrayList;-><init>(I)V
const/4 v1, 0x0
:goto_0
if-ge v1, p1, :cond_1
const-string v2, "?"
invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_1
const-string v1, ","
const/4 v2, 0x0
const/4 v3, 0x0
const/4 v4, 0x0
const/4 v5, 0x0
const/4 v6, 0x0
const/16 v7, 0x3e
const/4 v8, 0x0
invoke-static/range {v0 .. v8}, Lkotlin/collections/CollectionsKt;->joinToString$default(Ljava/lang/Iterable;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;ILjava/lang/CharSequence;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
return-void
.end method
.method public static final toRawQuery(Landroidx/work/WorkQuery;)Landroidx/sqlite/db/SupportSQLiteQuery;
.locals 9
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 31
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
.line 32
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "SELECT * FROM workspec"
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
.line 34
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getStates()Ljava/util/List;
move-result-object v2
check-cast v2, Ljava/util/Collection;
invoke-interface {v2}, Ljava/util/Collection;->isEmpty()Z
move-result v2
xor-int/lit8 v2, v2, 0x1
const-string v3, ")"
const/16 v4, 0xa
const-string v5, " AND"
const-string v6, " WHERE"
if-eqz v2, :cond_1
.line 35
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getStates()Ljava/util/List;
move-result-object v2
check-cast v2, Ljava/lang/Iterable;
.line 1549
new-instance v7, Ljava/util/ArrayList;
invoke-static {v2, v4}, Lkotlin/collections/CollectionsKt;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I
move-result v8
invoke-direct {v7, v8}, Ljava/util/ArrayList;-><init>(I)V
.line 1620
invoke-interface {v2}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_0
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v8
if-eqz v8, :cond_0
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v8
.line 1621
check-cast v8, Landroidx/work/WorkInfo$State;
.line 35
invoke-static {v8}, Landroidx/work/impl/model/WorkTypeConverters;->stateToInt(Landroidx/work/WorkInfo$State;)I
move-result v8
invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v8
.line 1621
invoke-interface {v7, v8}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
goto :goto_0
.line 36
:cond_0
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v6, " state IN ("
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 37
invoke-interface {v7}, Ljava/util/List;->size()I
move-result v2
invoke-static {v1, v2}, Landroidx/work/impl/utils/RawQueries;->bindings(Ljava/lang/StringBuilder;I)V
.line 38
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 39
invoke-interface {v0, v7}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
move-object v6, v5
.line 42
:cond_1
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getIds()Ljava/util/List;
move-result-object v2
check-cast v2, Ljava/util/Collection;
invoke-interface {v2}, Ljava/util/Collection;->isEmpty()Z
move-result v2
xor-int/lit8 v2, v2, 0x1
if-eqz v2, :cond_3
.line 43
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getIds()Ljava/util/List;
move-result-object v2
check-cast v2, Ljava/lang/Iterable;
.line 1549
new-instance v7, Ljava/util/ArrayList;
invoke-static {v2, v4}, Lkotlin/collections/CollectionsKt;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I
move-result v4
invoke-direct {v7, v4}, Ljava/util/ArrayList;-><init>(I)V
.line 1620
invoke-interface {v2}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_1
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_2
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
.line 1621
check-cast v4, Ljava/util/UUID;
.line 43
invoke-virtual {v4}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v4
.line 1621
invoke-interface {v7, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
goto :goto_1
.line 44
:cond_2
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " id IN ("
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 45
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getIds()Ljava/util/List;
move-result-object v2
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
invoke-static {v1, v2}, Landroidx/work/impl/utils/RawQueries;->bindings(Ljava/lang/StringBuilder;I)V
.line 46
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 47
invoke-interface {v0, v7}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
move-object v6, v5
.line 50
:cond_3
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getTags()Ljava/util/List;
move-result-object v2
check-cast v2, Ljava/util/Collection;
invoke-interface {v2}, Ljava/util/Collection;->isEmpty()Z
move-result v2
xor-int/lit8 v2, v2, 0x1
const-string v3, "))"
if-eqz v2, :cond_4
.line 51
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " id IN (SELECT work_spec_id FROM worktag WHERE tag IN ("
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 52
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getTags()Ljava/util/List;
move-result-object v2
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
invoke-static {v1, v2}, Landroidx/work/impl/utils/RawQueries;->bindings(Ljava/lang/StringBuilder;I)V
.line 53
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 54
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getTags()Ljava/util/List;
move-result-object v2
check-cast v2, Ljava/util/Collection;
invoke-interface {v0, v2}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
goto :goto_2
:cond_4
move-object v5, v6
.line 57
:goto_2
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getUniqueWorkNames()Ljava/util/List;
move-result-object v2
check-cast v2, Ljava/util/Collection;
invoke-interface {v2}, Ljava/util/Collection;->isEmpty()Z
move-result v2
xor-int/lit8 v2, v2, 0x1
if-eqz v2, :cond_5
.line 58
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " id IN (SELECT work_spec_id FROM workname WHERE name IN ("
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 59
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getUniqueWorkNames()Ljava/util/List;
move-result-object v2
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
invoke-static {v1, v2}, Landroidx/work/impl/utils/RawQueries;->bindings(Ljava/lang/StringBuilder;I)V
.line 60
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 61
invoke-virtual {p0}, Landroidx/work/WorkQuery;->getUniqueWorkNames()Ljava/util/List;
move-result-object p0
check-cast p0, Ljava/util/Collection;
invoke-interface {v0, p0}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
:cond_5
const-string p0, ";"
.line 63
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 64
new-instance p0, Landroidx/sqlite/db/SimpleSQLiteQuery;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "builder.toString()"
invoke-static {v1, v2}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
const/4 v2, 0x0
new-array v2, v2, [Ljava/lang/Object;
.line 38
invoke-interface {v0, v2}, Ljava/util/Collection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object v0
.line 64
invoke-direct {p0, v1, v0}, Landroidx/sqlite/db/SimpleSQLiteQuery;-><init>(Ljava/lang/String;[Ljava/lang/Object;)V
return-object p0
.end method

View File

@@ -0,0 +1,122 @@
.class Landroidx/work/impl/utils/SerialExecutorImpl$Task;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/SerialExecutorImpl;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "Task"
.end annotation
# instance fields
.field final mRunnable:Ljava/lang/Runnable;
.field final mSerialExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
# direct methods
.method public constructor <init>(Landroidx/work/impl/utils/SerialExecutorImpl;Ljava/lang/Runnable;)V
.locals 0
.param p1 # Landroidx/work/impl/utils/SerialExecutorImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/Runnable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 88
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/SerialExecutorImpl$Task;->mSerialExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
iput-object p2, p0, Landroidx/work/impl/utils/SerialExecutorImpl$Task;->mRunnable:Ljava/lang/Runnable;
return-void
.end method
# virtual methods
.method public run()V
.locals 3
:try_start_0
iget-object v0, p0, Landroidx/work/impl/utils/SerialExecutorImpl$Task;->mRunnable:Ljava/lang/Runnable;
.line 96
invoke-interface {v0}, Ljava/lang/Runnable;->run()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
iget-object v0, p0, Landroidx/work/impl/utils/SerialExecutorImpl$Task;->mSerialExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
.line 98
iget-object v0, v0, Landroidx/work/impl/utils/SerialExecutorImpl;->mLock:Ljava/lang/Object;
monitor-enter v0
:try_start_1
iget-object v1, p0, Landroidx/work/impl/utils/SerialExecutorImpl$Task;->mSerialExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
.line 99
invoke-virtual {v1}, Landroidx/work/impl/utils/SerialExecutorImpl;->scheduleNext()V
.line 100
monitor-exit v0
return-void
:catchall_0
move-exception v1
monitor-exit v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw v1
:catchall_1
move-exception v0
iget-object v1, p0, Landroidx/work/impl/utils/SerialExecutorImpl$Task;->mSerialExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
.line 98
iget-object v1, v1, Landroidx/work/impl/utils/SerialExecutorImpl;->mLock:Ljava/lang/Object;
monitor-enter v1
:try_start_2
iget-object v2, p0, Landroidx/work/impl/utils/SerialExecutorImpl$Task;->mSerialExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
.line 99
invoke-virtual {v2}, Landroidx/work/impl/utils/SerialExecutorImpl;->scheduleNext()V
.line 100
monitor-exit v1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_2
.line 101
throw v0
:catchall_2
move-exception v0
.line 100
:try_start_3
monitor-exit v1
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_2
throw v0
.end method

View File

@@ -0,0 +1,194 @@
.class public Landroidx/work/impl/utils/SerialExecutorImpl;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/work/impl/utils/SerialExecutorImpl$Task;
}
.end annotation
# instance fields
.field private mActive:Ljava/lang/Runnable;
.annotation build Landroidx/annotation/GuardedBy;
value = "mLock"
.end annotation
.end field
.field private final mExecutor:Ljava/util/concurrent/Executor;
.field final mLock:Ljava/lang/Object;
.field private final mTasks:Ljava/util/ArrayDeque;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayDeque<",
"Landroidx/work/impl/utils/SerialExecutorImpl$Task;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Ljava/util/concurrent/Executor;)V
.locals 0
.param p1 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 40
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mExecutor:Ljava/util/concurrent/Executor;
.line 42
new-instance p1, Ljava/util/ArrayDeque;
invoke-direct {p1}, Ljava/util/ArrayDeque;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mTasks:Ljava/util/ArrayDeque;
.line 43
new-instance p1, Ljava/lang/Object;
invoke-direct {p1}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mLock:Ljava/lang/Object;
return-void
.end method
# virtual methods
.method public execute(Ljava/lang/Runnable;)V
.locals 3
.param p1 # Ljava/lang/Runnable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
iget-object v0, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mLock:Ljava/lang/Object;
.line 48
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mTasks:Ljava/util/ArrayDeque;
.line 49
new-instance v2, Landroidx/work/impl/utils/SerialExecutorImpl$Task;
invoke-direct {v2, p0, p1}, Landroidx/work/impl/utils/SerialExecutorImpl$Task;-><init>(Landroidx/work/impl/utils/SerialExecutorImpl;Ljava/lang/Runnable;)V
invoke-virtual {v1, v2}, Ljava/util/ArrayDeque;->add(Ljava/lang/Object;)Z
iget-object p1, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mActive:Ljava/lang/Runnable;
if-nez p1, :cond_0
.line 51
invoke-virtual {p0}, Landroidx/work/impl/utils/SerialExecutorImpl;->scheduleNext()V
goto :goto_0
:catchall_0
move-exception p1
goto :goto_1
.line 53
:cond_0
:goto_0
monitor-exit v0
return-void
:goto_1
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p1
.end method
.method public getDelegatedExecutor()Ljava/util/concurrent/Executor;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mExecutor:Ljava/util/concurrent/Executor;
return-object v0
.end method
.method public hasPendingTasks()Z
.locals 2
iget-object v0, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mLock:Ljava/lang/Object;
.line 69
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mTasks:Ljava/util/ArrayDeque;
.line 70
invoke-virtual {v1}, Ljava/util/ArrayDeque;->isEmpty()Z
move-result v1
xor-int/lit8 v1, v1, 0x1
monitor-exit v0
return v1
:catchall_0
move-exception v1
.line 71
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method
.method public scheduleNext()V
.locals 2
.annotation build Landroidx/annotation/GuardedBy;
value = "mLock"
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mTasks:Ljava/util/ArrayDeque;
.line 59
invoke-virtual {v0}, Ljava/util/ArrayDeque;->poll()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Runnable;
iput-object v0, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mActive:Ljava/lang/Runnable;
if-eqz v0, :cond_0
iget-object v1, p0, Landroidx/work/impl/utils/SerialExecutorImpl;->mExecutor:Ljava/util/concurrent/Executor;
.line 60
invoke-interface {v1, v0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
:cond_0
return-void
.end method

View File

@@ -0,0 +1,116 @@
.class final Landroidx/work/impl/utils/StatusRunnable$forStringIds$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/StatusRunnable;->forStringIds(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/util/List;)Lcom/google/common/util/concurrent/ListenableFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function1;"
}
.end annotation
# instance fields
.field final synthetic $ids:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Ljava/util/List;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Ljava/lang/String;",
">;)V"
}
.end annotation
iput-object p1, p0, Landroidx/work/impl/utils/StatusRunnable$forStringIds$1;->$ids:Ljava/util/List;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.line 33
check-cast p1, Landroidx/work/impl/WorkDatabase;
invoke-virtual {p0, p1}, Landroidx/work/impl/utils/StatusRunnable$forStringIds$1;->invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public final invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
")",
"Ljava/util/List<",
"Landroidx/work/WorkInfo;",
">;"
}
.end annotation
const-string v0, "db"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 34
sget-object v0, Landroidx/work/impl/model/WorkSpec;->WORK_INFO_MAPPER:Landroidx/arch/core/util/Function;
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p1
iget-object v1, p0, Landroidx/work/impl/utils/StatusRunnable$forStringIds$1;->$ids:Ljava/util/List;
invoke-interface {p1, v1}, Landroidx/work/impl/model/WorkSpecDao;->getWorkStatusPojoForIds(Ljava/util/List;)Ljava/util/List;
move-result-object p1
invoke-interface {v0, p1}, Landroidx/arch/core/util/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
const-string v0, "WORK_INFO_MAPPER.apply(d\u2026orkStatusPojoForIds(ids))"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p1, Ljava/util/List;
return-object p1
.end method

View File

@@ -0,0 +1,100 @@
.class final Landroidx/work/impl/utils/StatusRunnable$forTag$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/StatusRunnable;->forTag(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function1;"
}
.end annotation
# instance fields
.field final synthetic $tag:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/StatusRunnable$forTag$1;->$tag:Ljava/lang/String;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.line 49
check-cast p1, Landroidx/work/impl/WorkDatabase;
invoke-virtual {p0, p1}, Landroidx/work/impl/utils/StatusRunnable$forTag$1;->invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public final invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
")",
"Ljava/util/List<",
"Landroidx/work/WorkInfo;",
">;"
}
.end annotation
const-string v0, "db"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 50
sget-object v0, Landroidx/work/impl/model/WorkSpec;->WORK_INFO_MAPPER:Landroidx/arch/core/util/Function;
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p1
iget-object v1, p0, Landroidx/work/impl/utils/StatusRunnable$forTag$1;->$tag:Ljava/lang/String;
invoke-interface {p1, v1}, Landroidx/work/impl/model/WorkSpecDao;->getWorkStatusPojoForTag(Ljava/lang/String;)Ljava/util/List;
move-result-object p1
invoke-interface {v0, p1}, Landroidx/arch/core/util/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
const-string v0, "WORK_INFO_MAPPER.apply(d\u2026orkStatusPojoForTag(tag))"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p1, Ljava/util/List;
return-object p1
.end method

View File

@@ -0,0 +1,98 @@
.class final Landroidx/work/impl/utils/StatusRunnable$forUUID$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/StatusRunnable;->forUUID(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/util/UUID;)Lcom/google/common/util/concurrent/ListenableFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function1;"
}
.end annotation
# instance fields
.field final synthetic $id:Ljava/util/UUID;
# direct methods
.method public constructor <init>(Ljava/util/UUID;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/StatusRunnable$forUUID$1;->$id:Ljava/util/UUID;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public final invoke(Landroidx/work/impl/WorkDatabase;)Landroidx/work/WorkInfo;
.locals 2
const-string v0, "db"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 42
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p1
iget-object v0, p0, Landroidx/work/impl/utils/StatusRunnable$forUUID$1;->$id:Ljava/util/UUID;
invoke-virtual {v0}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "id.toString()"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
invoke-interface {p1, v0}, Landroidx/work/impl/model/WorkSpecDao;->getWorkStatusPojoForId(Ljava/lang/String;)Landroidx/work/impl/model/WorkSpec$WorkInfoPojo;
move-result-object p1
if-eqz p1, :cond_0
invoke-virtual {p1}, Landroidx/work/impl/model/WorkSpec$WorkInfoPojo;->toWorkInfo()Landroidx/work/WorkInfo;
move-result-object p1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
return-object p1
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.line 41
check-cast p1, Landroidx/work/impl/WorkDatabase;
invoke-virtual {p0, p1}, Landroidx/work/impl/utils/StatusRunnable$forUUID$1;->invoke(Landroidx/work/impl/WorkDatabase;)Landroidx/work/WorkInfo;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,100 @@
.class final Landroidx/work/impl/utils/StatusRunnable$forUniqueWork$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/StatusRunnable;->forUniqueWork(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function1;"
}
.end annotation
# instance fields
.field final synthetic $name:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/StatusRunnable$forUniqueWork$1;->$name:Ljava/lang/String;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.line 57
check-cast p1, Landroidx/work/impl/WorkDatabase;
invoke-virtual {p0, p1}, Landroidx/work/impl/utils/StatusRunnable$forUniqueWork$1;->invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public final invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
")",
"Ljava/util/List<",
"Landroidx/work/WorkInfo;",
">;"
}
.end annotation
const-string v0, "db"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 58
sget-object v0, Landroidx/work/impl/model/WorkSpec;->WORK_INFO_MAPPER:Landroidx/arch/core/util/Function;
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p1
iget-object v1, p0, Landroidx/work/impl/utils/StatusRunnable$forUniqueWork$1;->$name:Ljava/lang/String;
invoke-interface {p1, v1}, Landroidx/work/impl/model/WorkSpecDao;->getWorkStatusPojoForName(Ljava/lang/String;)Ljava/util/List;
move-result-object p1
invoke-interface {v0, p1}, Landroidx/arch/core/util/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
const-string v0, "WORK_INFO_MAPPER.apply(d\u2026kStatusPojoForName(name))"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p1, Ljava/util/List;
return-object p1
.end method

View File

@@ -0,0 +1,104 @@
.class final Landroidx/work/impl/utils/StatusRunnable$forWorkQuerySpec$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/StatusRunnable;->forWorkQuerySpec(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Landroidx/work/WorkQuery;)Lcom/google/common/util/concurrent/ListenableFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function1;"
}
.end annotation
# instance fields
.field final synthetic $querySpec:Landroidx/work/WorkQuery;
# direct methods
.method public constructor <init>(Landroidx/work/WorkQuery;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/StatusRunnable$forWorkQuerySpec$1;->$querySpec:Landroidx/work/WorkQuery;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.line 65
check-cast p1, Landroidx/work/impl/WorkDatabase;
invoke-virtual {p0, p1}, Landroidx/work/impl/utils/StatusRunnable$forWorkQuerySpec$1;->invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public final invoke(Landroidx/work/impl/WorkDatabase;)Ljava/util/List;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
")",
"Ljava/util/List<",
"Landroidx/work/WorkInfo;",
">;"
}
.end annotation
const-string v0, "db"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 66
sget-object v0, Landroidx/work/impl/model/WorkSpec;->WORK_INFO_MAPPER:Landroidx/arch/core/util/Function;
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->rawWorkInfoDao()Landroidx/work/impl/model/RawWorkInfoDao;
move-result-object p1
iget-object v1, p0, Landroidx/work/impl/utils/StatusRunnable$forWorkQuerySpec$1;->$querySpec:Landroidx/work/WorkQuery;
invoke-static {v1}, Landroidx/work/impl/utils/RawQueries;->toRawQuery(Landroidx/work/WorkQuery;)Landroidx/sqlite/db/SupportSQLiteQuery;
move-result-object v1
invoke-interface {p1, v1}, Landroidx/work/impl/model/RawWorkInfoDao;->getWorkInfoPojos(Landroidx/sqlite/db/SupportSQLiteQuery;)Ljava/util/List;
move-result-object p1
invoke-interface {v0, p1}, Landroidx/arch/core/util/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
const-string v0, "WORK_INFO_MAPPER.apply(d\u2026(querySpec.toRawQuery()))"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p1, Ljava/util/List;
return-object p1
.end method

View File

@@ -0,0 +1,82 @@
.class final Landroidx/work/impl/utils/StatusRunnable$loadStatusFuture$1;
.super Lkotlin/jvm/internal/Lambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/StatusRunnable;->loadStatusFuture(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/jvm/functions/Function1;)Lcom/google/common/util/concurrent/ListenableFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/functions/Function0;"
}
.end annotation
# instance fields
.field final synthetic $block:Lkotlin/jvm/functions/Function1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function1;"
}
.end annotation
.end field
.field final synthetic $this_loadStatusFuture:Landroidx/work/impl/WorkDatabase;
# direct methods
.method public constructor <init>(Lkotlin/jvm/functions/Function1;Landroidx/work/impl/WorkDatabase;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/jvm/functions/Function1;",
"Landroidx/work/impl/WorkDatabase;",
")V"
}
.end annotation
iput-object p1, p0, Landroidx/work/impl/utils/StatusRunnable$loadStatusFuture$1;->$block:Lkotlin/jvm/functions/Function1;
iput-object p2, p0, Landroidx/work/impl/utils/StatusRunnable$loadStatusFuture$1;->$this_loadStatusFuture:Landroidx/work/impl/WorkDatabase;
const/4 p1, 0x0
invoke-direct {p0, p1}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public final invoke()Ljava/lang/Object;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()TT;"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/StatusRunnable$loadStatusFuture$1;->$block:Lkotlin/jvm/functions/Function1;
iget-object v1, p0, Landroidx/work/impl/utils/StatusRunnable$loadStatusFuture$1;->$this_loadStatusFuture:Landroidx/work/impl/WorkDatabase;
.line 74
invoke-interface {v0, v1}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,228 @@
.class public final Landroidx/work/impl/utils/StatusRunnable;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static final forStringIds(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/util/List;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
"Ljava/util/List<",
"Ljava/lang/String;",
">;)",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "executor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "ids"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 33
new-instance v0, Landroidx/work/impl/utils/StatusRunnable$forStringIds$1;
invoke-direct {v0, p2}, Landroidx/work/impl/utils/StatusRunnable$forStringIds$1;-><init>(Ljava/util/List;)V
invoke-static {p0, p1, v0}, Landroidx/work/impl/utils/StatusRunnable;->loadStatusFuture(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/jvm/functions/Function1;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p0
return-object p0
.end method
.method public static final forTag(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
"Ljava/lang/String;",
")",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "executor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "tag"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 49
new-instance v0, Landroidx/work/impl/utils/StatusRunnable$forTag$1;
invoke-direct {v0, p2}, Landroidx/work/impl/utils/StatusRunnable$forTag$1;-><init>(Ljava/lang/String;)V
invoke-static {p0, p1, v0}, Landroidx/work/impl/utils/StatusRunnable;->loadStatusFuture(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/jvm/functions/Function1;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p0
return-object p0
.end method
.method public static final forUUID(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/util/UUID;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
"Ljava/util/UUID;",
")",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "executor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "id"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 41
new-instance v0, Landroidx/work/impl/utils/StatusRunnable$forUUID$1;
invoke-direct {v0, p2}, Landroidx/work/impl/utils/StatusRunnable$forUUID$1;-><init>(Ljava/util/UUID;)V
invoke-static {p0, p1, v0}, Landroidx/work/impl/utils/StatusRunnable;->loadStatusFuture(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/jvm/functions/Function1;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p0
return-object p0
.end method
.method public static final forUniqueWork(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
"Ljava/lang/String;",
")",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "executor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "name"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 57
new-instance v0, Landroidx/work/impl/utils/StatusRunnable$forUniqueWork$1;
invoke-direct {v0, p2}, Landroidx/work/impl/utils/StatusRunnable$forUniqueWork$1;-><init>(Ljava/lang/String;)V
invoke-static {p0, p1, v0}, Landroidx/work/impl/utils/StatusRunnable;->loadStatusFuture(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/jvm/functions/Function1;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p0
return-object p0
.end method
.method public static final forWorkQuerySpec(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Landroidx/work/WorkQuery;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/WorkDatabase;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
"Landroidx/work/WorkQuery;",
")",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "executor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "querySpec"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 65
new-instance v0, Landroidx/work/impl/utils/StatusRunnable$forWorkQuerySpec$1;
invoke-direct {v0, p2}, Landroidx/work/impl/utils/StatusRunnable$forWorkQuerySpec$1;-><init>(Landroidx/work/WorkQuery;)V
invoke-static {p0, p1, v0}, Landroidx/work/impl/utils/StatusRunnable;->loadStatusFuture(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/jvm/functions/Function1;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p0
return-object p0
.end method
.method private static final loadStatusFuture(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/jvm/functions/Function1;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Landroidx/work/impl/WorkDatabase;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
"Lkotlin/jvm/functions/Function1;",
")",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
.line 74
invoke-interface {p1}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object p1
const-string v0, "executor.serialTaskExecutor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
new-instance v0, Landroidx/work/impl/utils/StatusRunnable$loadStatusFuture$1;
invoke-direct {v0, p2, p0}, Landroidx/work/impl/utils/StatusRunnable$loadStatusFuture$1;-><init>(Lkotlin/jvm/functions/Function1;Landroidx/work/impl/WorkDatabase;)V
const-string p0, "loadStatusFuture"
invoke-static {p1, p0, v0}, Landroidx/work/ListenableFutureKt;->executeAsync(Ljava/util/concurrent/Executor;Ljava/lang/String;Lkotlin/jvm/functions/Function0;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,154 @@
.class public final Landroidx/work/impl/utils/StopWorkRunnable;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# instance fields
.field private final processor:Landroidx/work/impl/Processor;
.field private final reason:I
.field private final stopInForeground:Z
.field private final token:Landroidx/work/impl/StartStopToken;
# direct methods
.method public constructor <init>(Landroidx/work/impl/Processor;Landroidx/work/impl/StartStopToken;Z)V
.locals 1
const-string v0, "processor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "token"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const/16 v0, -0x200
.line 40
invoke-direct {p0, p1, p2, p3, v0}, Landroidx/work/impl/utils/StopWorkRunnable;-><init>(Landroidx/work/impl/Processor;Landroidx/work/impl/StartStopToken;ZI)V
return-void
.end method
.method public constructor <init>(Landroidx/work/impl/Processor;Landroidx/work/impl/StartStopToken;ZI)V
.locals 1
const-string v0, "processor"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "token"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 26
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/StopWorkRunnable;->processor:Landroidx/work/impl/Processor;
iput-object p2, p0, Landroidx/work/impl/utils/StopWorkRunnable;->token:Landroidx/work/impl/StartStopToken;
iput-boolean p3, p0, Landroidx/work/impl/utils/StopWorkRunnable;->stopInForeground:Z
iput p4, p0, Landroidx/work/impl/utils/StopWorkRunnable;->reason:I
return-void
.end method
# virtual methods
.method public run()V
.locals 5
iget-boolean v0, p0, Landroidx/work/impl/utils/StopWorkRunnable;->stopInForeground:Z
if-eqz v0, :cond_0
iget-object v0, p0, Landroidx/work/impl/utils/StopWorkRunnable;->processor:Landroidx/work/impl/Processor;
iget-object v1, p0, Landroidx/work/impl/utils/StopWorkRunnable;->token:Landroidx/work/impl/StartStopToken;
iget v2, p0, Landroidx/work/impl/utils/StopWorkRunnable;->reason:I
.line 45
invoke-virtual {v0, v1, v2}, Landroidx/work/impl/Processor;->stopForegroundWork(Landroidx/work/impl/StartStopToken;I)Z
move-result v0
goto :goto_0
:cond_0
iget-object v0, p0, Landroidx/work/impl/utils/StopWorkRunnable;->processor:Landroidx/work/impl/Processor;
iget-object v1, p0, Landroidx/work/impl/utils/StopWorkRunnable;->token:Landroidx/work/impl/StartStopToken;
iget v2, p0, Landroidx/work/impl/utils/StopWorkRunnable;->reason:I
.line 49
invoke-virtual {v0, v1, v2}, Landroidx/work/impl/Processor;->stopWork(Landroidx/work/impl/StartStopToken;I)Z
move-result v0
.line 51
:goto_0
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v1
const-string v2, "StopWorkRunnable"
.line 53
invoke-static {v2}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
.line 54
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "StopWorkRunnable for "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v4, p0, Landroidx/work/impl/utils/StopWorkRunnable;->token:Landroidx/work/impl/StartStopToken;
invoke-virtual {v4}, Landroidx/work/impl/StartStopToken;->getId()Landroidx/work/impl/model/WorkGenerationalId;
move-result-object v4
invoke-virtual {v4}, Landroidx/work/impl/model/WorkGenerationalId;->getWorkSpecId()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, "; Processor.stopWork = "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
.line 52
invoke-virtual {v1, v2, v0}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method

View File

@@ -0,0 +1,40 @@
.class public Landroidx/work/impl/utils/SynchronousExecutor;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Executor;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
.line 29
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public execute(Ljava/lang/Runnable;)V
.locals 0
.param p1 # Ljava/lang/Runnable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 33
invoke-interface {p1}, Ljava/lang/Runnable;->run()V
return-void
.end method

View File

@@ -0,0 +1,234 @@
.class public final Landroidx/work/impl/utils/WakeLocks;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nWakeLocks.kt\nKotlin\n*S Kotlin\n*F\n+ 1 WakeLocks.kt\nandroidx/work/impl/utils/WakeLocks\n+ 2 fake.kt\nkotlin/jvm/internal/FakeKt\n+ 3 _Maps.kt\nkotlin/collections/MapsKt___MapsKt\n*L\n1#1,71:1\n1#2:72\n215#3,2:73\n*S KotlinDebug\n*F\n+ 1 WakeLocks.kt\nandroidx/work/impl/utils/WakeLocks\n*L\n63#1:73,2\n*E\n"
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 2
const-string v0, "WakeLocks"
.line 25
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "tagWithPrefix(\"WakeLocks\")"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
sput-object v0, Landroidx/work/impl/utils/WakeLocks;->TAG:Ljava/lang/String;
return-void
.end method
.method public static final checkWakeLocks()V
.locals 6
.line 55
new-instance v0, Ljava/util/LinkedHashMap;
invoke-direct {v0}, Ljava/util/LinkedHashMap;-><init>()V
.line 56
sget-object v1, Landroidx/work/impl/utils/WakeLocksHolder;->INSTANCE:Landroidx/work/impl/utils/WakeLocksHolder;
monitor-enter v1
.line 60
:try_start_0
invoke-virtual {v1}, Landroidx/work/impl/utils/WakeLocksHolder;->getWakeLocks()Ljava/util/WeakHashMap;
move-result-object v2
invoke-interface {v0, v2}, Ljava/util/Map;->putAll(Ljava/util/Map;)V
.line 61
sget-object v2, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 56
monitor-exit v1
.line 215
invoke-interface {v0}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/Map$Entry;
.line 63
invoke-interface {v1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroid/os/PowerManager$WakeLock;
invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
if-eqz v2, :cond_0
.line 64
invoke-virtual {v2}, Landroid/os/PowerManager$WakeLock;->isHeld()Z
move-result v2
const/4 v3, 0x1
if-ne v2, v3, :cond_0
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v2
sget-object v3, Landroidx/work/impl/utils/WakeLocks;->TAG:Ljava/lang/String;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "WakeLock held for "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v3, v1}, Landroidx/work/Logger;->warning(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_0
:cond_1
return-void
:catchall_0
move-exception v0
.line 56
monitor-exit v1
throw v0
.end method
.method public static final newWakeLock(Landroid/content/Context;Ljava/lang/String;)Landroid/os/PowerManager$WakeLock;
.locals 2
const-string v0, "context"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "tag"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 36
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
const-string v0, "power"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
const-string v0, "null cannot be cast to non-null type android.os.PowerManager"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNull(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p0, Landroid/os/PowerManager;
.line 37
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "WorkManager: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const/4 v0, 0x1
.line 38
invoke-virtual {p0, v0, p1}, Landroid/os/PowerManager;->newWakeLock(ILjava/lang/String;)Landroid/os/PowerManager$WakeLock;
move-result-object p0
.line 41
sget-object v0, Landroidx/work/impl/utils/WakeLocksHolder;->INSTANCE:Landroidx/work/impl/utils/WakeLocksHolder;
monitor-enter v0
:try_start_0
invoke-virtual {v0}, Landroidx/work/impl/utils/WakeLocksHolder;->getWakeLocks()Ljava/util/WeakHashMap;
move-result-object v1
invoke-virtual {v1, p0, p1}, Ljava/util/WeakHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/String;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
monitor-exit v0
const-string p1, "wakeLock"
.line 42
invoke-static {p0, p1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
return-object p0
:catchall_0
move-exception p0
.line 41
monitor-exit v0
throw p0
.end method

View File

@@ -0,0 +1,67 @@
.class final Landroidx/work/impl/utils/WakeLocksHolder;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final INSTANCE:Landroidx/work/impl/utils/WakeLocksHolder;
.field private static final wakeLocks:Ljava/util/WeakHashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/WeakHashMap<",
"Landroid/os/PowerManager$WakeLock;",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Landroidx/work/impl/utils/WakeLocksHolder;
invoke-direct {v0}, Landroidx/work/impl/utils/WakeLocksHolder;-><init>()V
sput-object v0, Landroidx/work/impl/utils/WakeLocksHolder;->INSTANCE:Landroidx/work/impl/utils/WakeLocksHolder;
.line 69
new-instance v0, Ljava/util/WeakHashMap;
invoke-direct {v0}, Ljava/util/WeakHashMap;-><init>()V
sput-object v0, Landroidx/work/impl/utils/WakeLocksHolder;->wakeLocks:Ljava/util/WeakHashMap;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 68
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final getWakeLocks()Ljava/util/WeakHashMap;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/WeakHashMap<",
"Landroid/os/PowerManager$WakeLock;",
"Ljava/lang/String;",
">;"
}
.end annotation
sget-object v0, Landroidx/work/impl/utils/WakeLocksHolder;->wakeLocks:Ljava/util/WeakHashMap;
return-object v0
.end method

View File

@@ -0,0 +1,327 @@
.class final Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;
.super Lkotlin/coroutines/jvm/internal/SuspendLambda;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function2;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/work/impl/utils/WorkForegroundKt;->workForeground(Landroid/content/Context;Landroidx/work/impl/model/WorkSpec;Landroidx/work/ListenableWorker;Landroidx/work/ForegroundUpdater;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/coroutines/jvm/internal/SuspendLambda;",
"Lkotlin/jvm/functions/Function2;"
}
.end annotation
.annotation runtime Lkotlin/coroutines/jvm/internal/DebugMetadata;
c = "androidx.work.impl.utils.WorkForegroundKt$workForeground$2"
f = "WorkForeground.kt"
l = {
0x2a,
0x32
}
m = "invokeSuspend"
.end annotation
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nWorkForeground.kt\nKotlin\n*S Kotlin\n*F\n+ 1 WorkForeground.kt\nandroidx/work/impl/utils/WorkForegroundKt$workForeground$2\n+ 2 LoggerExt.kt\nandroidx/work/LoggerExtKt\n*L\n1#1,55:1\n19#2:56\n*S KotlinDebug\n*F\n+ 1 WorkForeground.kt\nandroidx/work/impl/utils/WorkForegroundKt$workForeground$2\n*L\n49#1:56\n*E\n"
}
.end annotation
# instance fields
.field final synthetic $context:Landroid/content/Context;
.field final synthetic $foregroundUpdater:Landroidx/work/ForegroundUpdater;
.field final synthetic $spec:Landroidx/work/impl/model/WorkSpec;
.field final synthetic $worker:Landroidx/work/ListenableWorker;
.field label:I
# direct methods
.method public constructor <init>(Landroidx/work/ListenableWorker;Landroidx/work/impl/model/WorkSpec;Landroidx/work/ForegroundUpdater;Landroid/content/Context;Lkotlin/coroutines/Continuation;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/ListenableWorker;",
"Landroidx/work/impl/model/WorkSpec;",
"Landroidx/work/ForegroundUpdater;",
"Landroid/content/Context;",
"Lkotlin/coroutines/Continuation;",
")V"
}
.end annotation
iput-object p1, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$worker:Landroidx/work/ListenableWorker;
iput-object p2, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$spec:Landroidx/work/impl/model/WorkSpec;
iput-object p3, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$foregroundUpdater:Landroidx/work/ForegroundUpdater;
iput-object p4, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$context:Landroid/content/Context;
const/4 p1, 0x2
invoke-direct {p0, p1, p5}, Lkotlin/coroutines/jvm/internal/SuspendLambda;-><init>(ILkotlin/coroutines/Continuation;)V
return-void
.end method
# virtual methods
.method public final create(Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Object;",
"Lkotlin/coroutines/Continuation;",
")",
"Lkotlin/coroutines/Continuation;"
}
.end annotation
new-instance p1, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;
iget-object v1, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$worker:Landroidx/work/ListenableWorker;
iget-object v2, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$spec:Landroidx/work/impl/model/WorkSpec;
iget-object v3, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$foregroundUpdater:Landroidx/work/ForegroundUpdater;
iget-object v4, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$context:Landroid/content/Context;
move-object v0, p1
move-object v5, p2
invoke-direct/range {v0 .. v5}, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;-><init>(Landroidx/work/ListenableWorker;Landroidx/work/impl/model/WorkSpec;Landroidx/work/ForegroundUpdater;Landroid/content/Context;Lkotlin/coroutines/Continuation;)V
return-object p1
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.line 0
check-cast p1, Lkotlinx/coroutines/CoroutineScope;
check-cast p2, Lkotlin/coroutines/Continuation;
invoke-virtual {p0, p1, p2}, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->invoke(Lkotlinx/coroutines/CoroutineScope;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public final invoke(Lkotlinx/coroutines/CoroutineScope;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlinx/coroutines/CoroutineScope;",
"Lkotlin/coroutines/Continuation;",
")",
"Ljava/lang/Object;"
}
.end annotation
.line 0
invoke-virtual {p0, p1, p2}, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->create(Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
move-result-object p1
check-cast p1, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;
sget-object p2, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
invoke-virtual {p1, p2}, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public final invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;
.locals 7
invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object;
move-result-object v0
iget v1, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->label:I
const/4 v2, 0x2
const/4 v3, 0x1
if-eqz v1, :cond_2
if-eq v1, v3, :cond_1
if-ne v1, v2, :cond_0
.line 41
invoke-static {p1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V
goto :goto_1
:cond_0
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "call to \'resume\' before \'invoke\' with coroutine"
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_1
invoke-static {p1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V
goto :goto_0
:cond_2
invoke-static {p1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V
iget-object p1, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$worker:Landroidx/work/ListenableWorker;
.line 42
invoke-virtual {p1}, Landroidx/work/ListenableWorker;->getForegroundInfoAsync()Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p1
const-string v1, "worker.getForegroundInfoAsync()"
invoke-static {p1, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
iget-object v1, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$worker:Landroidx/work/ListenableWorker;
iput v3, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->label:I
invoke-static {p1, v1, p0}, Landroidx/work/impl/WorkerWrapperKt;->awaitWithin(Lcom/google/common/util/concurrent/ListenableFuture;Landroidx/work/ListenableWorker;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
move-result-object p1
if-ne p1, v0, :cond_3
return-object v0
.line 41
:cond_3
:goto_0
check-cast p1, Landroidx/work/ForegroundInfo;
if-eqz p1, :cond_5
.line 49
invoke-static {}, Landroidx/work/impl/utils/WorkForegroundKt;->access$getTAG$p()Ljava/lang/String;
move-result-object v1
iget-object v3, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$spec:Landroidx/work/impl/model/WorkSpec;
.line 19
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v4
.line 49
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "Updating notification for "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, v3, Landroidx/work/impl/model/WorkSpec;->workerClassName:Ljava/lang/String;
invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
.line 19
invoke-virtual {v4, v1, v3}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
iget-object v1, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$foregroundUpdater:Landroidx/work/ForegroundUpdater;
iget-object v3, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$context:Landroid/content/Context;
iget-object v4, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$worker:Landroidx/work/ListenableWorker;
.line 50
invoke-virtual {v4}, Landroidx/work/ListenableWorker;->getId()Ljava/util/UUID;
move-result-object v4
invoke-interface {v1, v3, v4, p1}, Landroidx/work/ForegroundUpdater;->setForegroundAsync(Landroid/content/Context;Ljava/util/UUID;Landroidx/work/ForegroundInfo;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p1
const-string v1, "foregroundUpdater.setFor\u2026orker.id, foregroundInfo)"
invoke-static {p1, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
iput v2, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->label:I
invoke-static {p1, p0}, Landroidx/concurrent/futures/ListenableFutureKt;->await(Lcom/google/common/util/concurrent/ListenableFuture;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
move-result-object p1
if-ne p1, v0, :cond_4
return-object v0
:cond_4
:goto_1
return-object p1
.line 45
:cond_5
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "Worker was marked important ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;->$spec:Landroidx/work/impl/model/WorkSpec;
iget-object v0, v0, Landroidx/work/impl/model/WorkSpec;->workerClassName:Ljava/lang/String;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ") but did not provide ForegroundInfo"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
.line 47
new-instance v0, Ljava/lang/IllegalStateException;
invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method

View File

@@ -0,0 +1,121 @@
.class public final Landroidx/work/impl/utils/WorkForegroundKt;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field private static final TAG:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 2
const-string v0, "WorkForegroundRunnable"
.line 54
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "tagWithPrefix(\"WorkForegroundRunnable\")"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
sput-object v0, Landroidx/work/impl/utils/WorkForegroundKt;->TAG:Ljava/lang/String;
return-void
.end method
.method public static final synthetic access$getTAG$p()Ljava/lang/String;
.locals 1
sget-object v0, Landroidx/work/impl/utils/WorkForegroundKt;->TAG:Ljava/lang/String;
return-object v0
.end method
.method public static final workForeground(Landroid/content/Context;Landroidx/work/impl/model/WorkSpec;Landroidx/work/ListenableWorker;Landroidx/work/ForegroundUpdater;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
.locals 7
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Landroidx/work/impl/model/WorkSpec;",
"Landroidx/work/ListenableWorker;",
"Landroidx/work/ForegroundUpdater;",
"Landroidx/work/impl/utils/taskexecutor/TaskExecutor;",
"Lkotlin/coroutines/Continuation;",
")",
"Ljava/lang/Object;"
}
.end annotation
.line 38
iget-boolean v0, p1, Landroidx/work/impl/model/WorkSpec;->expedited:Z
if-eqz v0, :cond_2
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1f
if-lt v0, v1, :cond_0
goto :goto_0
.line 40
:cond_0
invoke-interface {p4}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getMainThreadExecutor()Ljava/util/concurrent/Executor;
move-result-object p4
const-string v0, "taskExecutor.mainThreadExecutor"
invoke-static {p4, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {p4}, Lkotlinx/coroutines/ExecutorsKt;->from(Ljava/util/concurrent/Executor;)Lkotlinx/coroutines/CoroutineDispatcher;
move-result-object p4
.line 41
new-instance v6, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;
const/4 v5, 0x0
move-object v0, v6
move-object v1, p2
move-object v2, p1
move-object v3, p3
move-object v4, p0
invoke-direct/range {v0 .. v5}, Landroidx/work/impl/utils/WorkForegroundKt$workForeground$2;-><init>(Landroidx/work/ListenableWorker;Landroidx/work/impl/model/WorkSpec;Landroidx/work/ForegroundUpdater;Landroid/content/Context;Lkotlin/coroutines/Continuation;)V
invoke-static {p4, v6, p5}, Lkotlinx/coroutines/BuildersKt;->withContext(Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function2;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
move-result-object p0
invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object;
move-result-object p1
if-ne p0, p1, :cond_1
return-object p0
:cond_1
sget-object p0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
return-object p0
.line 38
:cond_2
:goto_0
sget-object p0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;
return-object p0
.end method

View File

@@ -0,0 +1,56 @@
.class public final synthetic Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/utils/WorkForegroundUpdater;
.field public final synthetic f$1:Ljava/util/UUID;
.field public final synthetic f$2:Landroidx/work/ForegroundInfo;
.field public final synthetic f$3:Landroid/content/Context;
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/utils/WorkForegroundUpdater;Ljava/util/UUID;Landroidx/work/ForegroundInfo;Landroid/content/Context;)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/utils/WorkForegroundUpdater;
iput-object p2, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$1:Ljava/util/UUID;
iput-object p3, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$2:Landroidx/work/ForegroundInfo;
iput-object p4, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$3:Landroid/content/Context;
return-void
.end method
# virtual methods
.method public final invoke()Ljava/lang/Object;
.locals 4
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/utils/WorkForegroundUpdater;
iget-object v1, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$1:Ljava/util/UUID;
iget-object v2, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$2:Landroidx/work/ForegroundInfo;
iget-object v3, p0, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;->f$3:Landroid/content/Context;
invoke-static {v0, v1, v2, v3}, Landroidx/work/impl/utils/WorkForegroundUpdater;->$r8$lambda$c1azVhcgmFdEBmNnbyDjIB5nllI(Landroidx/work/impl/utils/WorkForegroundUpdater;Ljava/util/UUID;Landroidx/work/ForegroundInfo;Landroid/content/Context;)Ljava/lang/Void;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,199 @@
.class public Landroidx/work/impl/utils/WorkForegroundUpdater;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/work/ForegroundUpdater;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String;
# instance fields
.field final mForegroundProcessor:Landroidx/work/impl/foreground/ForegroundProcessor;
.field private final mTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.field final mWorkSpecDao:Landroidx/work/impl/model/WorkSpecDao;
# direct methods
.method public static synthetic $r8$lambda$c1azVhcgmFdEBmNnbyDjIB5nllI(Landroidx/work/impl/utils/WorkForegroundUpdater;Ljava/util/UUID;Landroidx/work/ForegroundInfo;Landroid/content/Context;)Ljava/lang/Void;
.locals 0
.line 0
invoke-direct {p0, p1, p2, p3}, Landroidx/work/impl/utils/WorkForegroundUpdater;->lambda$setForegroundAsync$0(Ljava/util/UUID;Landroidx/work/ForegroundInfo;Landroid/content/Context;)Ljava/lang/Void;
move-result-object p0
return-object p0
.end method
.method static constructor <clinit>()V
.locals 1
const-string v0, "WMFgUpdater"
.line 50
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Landroidx/work/impl/utils/WorkForegroundUpdater;->TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/foreground/ForegroundProcessor;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;)V
.locals 0
.param p1 # Landroidx/work/impl/WorkDatabase;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/work/impl/foreground/ForegroundProcessor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroid/annotation/SuppressLint;
value = {
"LambdaLast"
}
.end annotation
.line 66
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p2, p0, Landroidx/work/impl/utils/WorkForegroundUpdater;->mForegroundProcessor:Landroidx/work/impl/foreground/ForegroundProcessor;
iput-object p3, p0, Landroidx/work/impl/utils/WorkForegroundUpdater;->mTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.line 70
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p1
iput-object p1, p0, Landroidx/work/impl/utils/WorkForegroundUpdater;->mWorkSpecDao:Landroidx/work/impl/model/WorkSpecDao;
return-void
.end method
.method private synthetic lambda$setForegroundAsync$0(Ljava/util/UUID;Landroidx/work/ForegroundInfo;Landroid/content/Context;)Ljava/lang/Void;
.locals 2
.line 81
invoke-virtual {p1}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object p1
iget-object v0, p0, Landroidx/work/impl/utils/WorkForegroundUpdater;->mWorkSpecDao:Landroidx/work/impl/model/WorkSpecDao;
.line 82
invoke-interface {v0, p1}, Landroidx/work/impl/model/WorkSpecDao;->getWorkSpec(Ljava/lang/String;)Landroidx/work/impl/model/WorkSpec;
move-result-object v0
if-eqz v0, :cond_0
.line 83
iget-object v1, v0, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
invoke-virtual {v1}, Landroidx/work/WorkInfo$State;->isFinished()Z
move-result v1
if-nez v1, :cond_0
iget-object v1, p0, Landroidx/work/impl/utils/WorkForegroundUpdater;->mForegroundProcessor:Landroidx/work/impl/foreground/ForegroundProcessor;
.line 94
invoke-interface {v1, p1, p2}, Landroidx/work/impl/foreground/ForegroundProcessor;->startForeground(Ljava/lang/String;Landroidx/work/ForegroundInfo;)V
.line 97
invoke-static {v0}, Landroidx/work/impl/model/WorkSpecKt;->generationalId(Landroidx/work/impl/model/WorkSpec;)Landroidx/work/impl/model/WorkGenerationalId;
move-result-object p1
invoke-static {p3, p1, p2}, Landroidx/work/impl/foreground/SystemForegroundDispatcher;->createNotifyIntent(Landroid/content/Context;Landroidx/work/impl/model/WorkGenerationalId;Landroidx/work/ForegroundInfo;)Landroid/content/Intent;
move-result-object p1
.line 99
invoke-virtual {p3, p1}, Landroid/content/Context;->startService(Landroid/content/Intent;)Landroid/content/ComponentName;
const/4 p1, 0x0
return-object p1
.line 89
:cond_0
new-instance p1, Ljava/lang/IllegalStateException;
const-string p2, "Calls to setForegroundAsync() must complete before a ListenableWorker signals completion of work by returning an instance of Result."
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public setForegroundAsync(Landroid/content/Context;Ljava/util/UUID;Landroidx/work/ForegroundInfo;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 2
.param p1 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/util/UUID;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroidx/work/ForegroundInfo;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/util/UUID;",
"Landroidx/work/ForegroundInfo;",
")",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/WorkForegroundUpdater;->mTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.line 79
invoke-interface {v0}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object v0
new-instance v1, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;
invoke-direct {v1, p0, p2, p3, p1}, Landroidx/work/impl/utils/WorkForegroundUpdater$$ExternalSyntheticLambda0;-><init>(Landroidx/work/impl/utils/WorkForegroundUpdater;Ljava/util/UUID;Landroidx/work/ForegroundInfo;Landroid/content/Context;)V
const-string p1, "setForegroundAsync"
invoke-static {v0, p1, v1}, Landroidx/work/ListenableFutureKt;->executeAsync(Ljava/util/concurrent/Executor;Ljava/lang/String;Lkotlin/jvm/functions/Function0;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,50 @@
.class public final synthetic Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lkotlin/jvm/functions/Function0;
# instance fields
.field public final synthetic f$0:Landroidx/work/impl/utils/WorkProgressUpdater;
.field public final synthetic f$1:Ljava/util/UUID;
.field public final synthetic f$2:Landroidx/work/Data;
# direct methods
.method public synthetic constructor <init>(Landroidx/work/impl/utils/WorkProgressUpdater;Ljava/util/UUID;Landroidx/work/Data;)V
.locals 0
.line 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/utils/WorkProgressUpdater;
iput-object p2, p0, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;->f$1:Ljava/util/UUID;
iput-object p3, p0, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;->f$2:Landroidx/work/Data;
return-void
.end method
# virtual methods
.method public final invoke()Ljava/lang/Object;
.locals 3
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;->f$0:Landroidx/work/impl/utils/WorkProgressUpdater;
iget-object v1, p0, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;->f$1:Ljava/util/UUID;
iget-object v2, p0, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;->f$2:Landroidx/work/Data;
invoke-static {v0, v1, v2}, Landroidx/work/impl/utils/WorkProgressUpdater;->$r8$lambda$fu4BfbStuHr2T3y0y-cjCVBoSrM(Landroidx/work/impl/utils/WorkProgressUpdater;Ljava/util/UUID;Landroidx/work/Data;)Ljava/lang/Void;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,299 @@
.class public Landroidx/work/impl/utils/WorkProgressUpdater;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/work/ProgressUpdater;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# static fields
.field static final TAG:Ljava/lang/String;
# instance fields
.field final mTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.field final mWorkDatabase:Landroidx/work/impl/WorkDatabase;
# direct methods
.method public static synthetic $r8$lambda$fu4BfbStuHr2T3y0y-cjCVBoSrM(Landroidx/work/impl/utils/WorkProgressUpdater;Ljava/util/UUID;Landroidx/work/Data;)Ljava/lang/Void;
.locals 0
.line 0
invoke-direct {p0, p1, p2}, Landroidx/work/impl/utils/WorkProgressUpdater;->lambda$updateProgress$0(Ljava/util/UUID;Landroidx/work/Data;)Ljava/lang/Void;
move-result-object p0
return-object p0
.end method
.method static constructor <clinit>()V
.locals 1
const-string v0, "WorkProgressUpdater"
.line 47
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Landroidx/work/impl/utils/WorkProgressUpdater;->TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>(Landroidx/work/impl/WorkDatabase;Landroidx/work/impl/utils/taskexecutor/TaskExecutor;)V
.locals 0
.param p1 # Landroidx/work/impl/WorkDatabase;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 59
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
iput-object p2, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
return-void
.end method
.method private synthetic lambda$updateProgress$0(Ljava/util/UUID;Landroidx/work/Data;)Ljava/lang/Void;
.locals 5
.line 71
invoke-virtual {p1}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v0
.line 72
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v1
sget-object v2, Landroidx/work/impl/utils/WorkProgressUpdater;->TAG:Ljava/lang/String;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Updating progress for "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string p1, " ("
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string p1, ")"
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v1, v2, p1}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
iget-object p1, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 73
invoke-virtual {p1}, Landroidx/room/RoomDatabase;->beginTransaction()V
:try_start_0
iget-object p1, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 75
invoke-virtual {p1}, Landroidx/work/impl/WorkDatabase;->workSpecDao()Landroidx/work/impl/model/WorkSpecDao;
move-result-object p1
.line 76
invoke-interface {p1, v0}, Landroidx/work/impl/model/WorkSpecDao;->getWorkSpec(Ljava/lang/String;)Landroidx/work/impl/model/WorkSpec;
move-result-object p1
if-eqz p1, :cond_1
.line 78
iget-object p1, p1, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
.line 80
sget-object v1, Landroidx/work/WorkInfo$State;->RUNNING:Landroidx/work/WorkInfo$State;
if-ne p1, v1, :cond_0
.line 81
new-instance p1, Landroidx/work/impl/model/WorkProgress;
invoke-direct {p1, v0, p2}, Landroidx/work/impl/model/WorkProgress;-><init>(Ljava/lang/String;Landroidx/work/Data;)V
iget-object p2, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 82
invoke-virtual {p2}, Landroidx/work/impl/WorkDatabase;->workProgressDao()Landroidx/work/impl/model/WorkProgressDao;
move-result-object p2
invoke-interface {p2, p1}, Landroidx/work/impl/model/WorkProgressDao;->insert(Landroidx/work/impl/model/WorkProgress;)V
goto :goto_0
:catchall_0
move-exception p1
goto :goto_1
.line 84
:cond_0
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object p1
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Ignoring setProgressAsync(...). WorkSpec ("
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ") is not in a RUNNING state."
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, v2, p2}, Landroidx/work/Logger;->warning(Ljava/lang/String;Ljava/lang/String;)V
:goto_0
iget-object p1, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 95
invoke-virtual {p1}, Landroidx/room/RoomDatabase;->setTransactionSuccessful()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
iget-object p1, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 100
invoke-virtual {p1}, Landroidx/room/RoomDatabase;->endTransaction()V
const/4 p1, 0x0
return-object p1
:cond_1
:try_start_1
const-string p1, "Calls to setProgressAsync() must complete before a ListenableWorker signals completion of work by returning an instance of Result."
.line 93
new-instance p2, Ljava/lang/IllegalStateException;
invoke-direct {p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 97
:goto_1
:try_start_2
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object p2
sget-object v0, Landroidx/work/impl/utils/WorkProgressUpdater;->TAG:Ljava/lang/String;
const-string v1, "Error updating Worker progress"
invoke-virtual {p2, v0, v1, p1}, Landroidx/work/Logger;->error(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
.line 98
throw p1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
:catchall_1
move-exception p1
iget-object p2, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mWorkDatabase:Landroidx/work/impl/WorkDatabase;
.line 100
invoke-virtual {p2}, Landroidx/room/RoomDatabase;->endTransaction()V
.line 101
throw p1
.end method
# virtual methods
.method public updateProgress(Landroid/content/Context;Ljava/util/UUID;Landroidx/work/Data;)Lcom/google/common/util/concurrent/ListenableFuture;
.locals 1
.param p1 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/util/UUID;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroidx/work/Data;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/util/UUID;",
"Landroidx/work/Data;",
")",
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
iget-object p1, p0, Landroidx/work/impl/utils/WorkProgressUpdater;->mTaskExecutor:Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.line 70
invoke-interface {p1}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object p1
new-instance v0, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;
invoke-direct {v0, p0, p2, p3}, Landroidx/work/impl/utils/WorkProgressUpdater$$ExternalSyntheticLambda0;-><init>(Landroidx/work/impl/utils/WorkProgressUpdater;Ljava/util/UUID;Landroidx/work/Data;)V
const-string p2, "updateProgress"
invoke-static {p1, p2, v0}, Landroidx/work/ListenableFutureKt;->executeAsync(Ljava/util/concurrent/Executor;Ljava/lang/String;Lkotlin/jvm/functions/Function0;)Lcom/google/common/util/concurrent/ListenableFuture;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,29 @@
.class public interface abstract Landroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/WorkTimer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "TimeLimitExceededListener"
.end annotation
# virtual methods
.method public abstract onTimeLimitExceeded(Landroidx/work/impl/model/WorkGenerationalId;)V
.param p1 # Landroidx/work/impl/model/WorkGenerationalId;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.end method

View File

@@ -0,0 +1,153 @@
.class public Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/WorkTimer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "WorkTimerRunnable"
.end annotation
# static fields
.field static final TAG:Ljava/lang/String; = "WrkTimerRunnable"
# instance fields
.field private final mWorkGenerationalId:Landroidx/work/impl/model/WorkGenerationalId;
.field private final mWorkTimer:Landroidx/work/impl/utils/WorkTimer;
# direct methods
.method public constructor <init>(Landroidx/work/impl/utils/WorkTimer;Landroidx/work/impl/model/WorkGenerationalId;)V
.locals 0
.param p1 # Landroidx/work/impl/utils/WorkTimer;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/work/impl/model/WorkGenerationalId;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 121
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkTimer:Landroidx/work/impl/utils/WorkTimer;
iput-object p2, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkGenerationalId:Landroidx/work/impl/model/WorkGenerationalId;
return-void
.end method
# virtual methods
.method public run()V
.locals 7
iget-object v0, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkTimer:Landroidx/work/impl/utils/WorkTimer;
.line 128
iget-object v0, v0, Landroidx/work/impl/utils/WorkTimer;->mLock:Ljava/lang/Object;
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkTimer:Landroidx/work/impl/utils/WorkTimer;
.line 129
iget-object v1, v1, Landroidx/work/impl/utils/WorkTimer;->mTimerMap:Ljava/util/Map;
iget-object v2, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkGenerationalId:Landroidx/work/impl/model/WorkGenerationalId;
invoke-interface {v1, v2}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;
if-eqz v1, :cond_0
iget-object v1, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkTimer:Landroidx/work/impl/utils/WorkTimer;
.line 132
iget-object v1, v1, Landroidx/work/impl/utils/WorkTimer;->mListeners:Ljava/util/Map;
iget-object v2, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkGenerationalId:Landroidx/work/impl/model/WorkGenerationalId;
.line 133
invoke-interface {v1, v2}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;
if-eqz v1, :cond_1
iget-object v2, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkGenerationalId:Landroidx/work/impl/model/WorkGenerationalId;
.line 135
invoke-interface {v1, v2}, Landroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;->onTimeLimitExceeded(Landroidx/work/impl/model/WorkGenerationalId;)V
goto :goto_0
:catchall_0
move-exception v1
goto :goto_1
.line 138
:cond_0
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v1
const-string v2, "WrkTimerRunnable"
const-string v3, "Timer with %s is already marked as complete."
const/4 v4, 0x1
new-array v4, v4, [Ljava/lang/Object;
iget-object v5, p0, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;->mWorkGenerationalId:Landroidx/work/impl/model/WorkGenerationalId;
const/4 v6, 0x0
aput-object v5, v4, v6
invoke-static {v3, v4}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v2, v3}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
.line 141
:cond_1
:goto_0
monitor-exit v0
return-void
:goto_1
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method

View File

@@ -0,0 +1,341 @@
.class public Landroidx/work/impl/utils/WorkTimer;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;,
Landroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String;
# instance fields
.field final mListeners:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Landroidx/work/impl/model/WorkGenerationalId;",
"Landroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;",
">;"
}
.end annotation
.end field
.field final mLock:Ljava/lang/Object;
.field final mRunnableScheduler:Landroidx/work/RunnableScheduler;
.field final mTimerMap:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Landroidx/work/impl/model/WorkGenerationalId;",
"Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.locals 1
const-string v0, "WorkTimer"
.line 39
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Landroidx/work/impl/utils/WorkTimer;->TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>(Landroidx/work/RunnableScheduler;)V
.locals 1
.param p1 # Landroidx/work/RunnableScheduler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 46
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 47
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Landroidx/work/impl/utils/WorkTimer;->mTimerMap:Ljava/util/Map;
.line 48
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Landroidx/work/impl/utils/WorkTimer;->mListeners:Ljava/util/Map;
.line 49
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
iput-object v0, p0, Landroidx/work/impl/utils/WorkTimer;->mLock:Ljava/lang/Object;
iput-object p1, p0, Landroidx/work/impl/utils/WorkTimer;->mRunnableScheduler:Landroidx/work/RunnableScheduler;
return-void
.end method
# virtual methods
.method public getListeners()Ljava/util/Map;
.locals 2
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Landroidx/work/impl/model/WorkGenerationalId;",
"Landroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;",
">;"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/WorkTimer;->mLock:Ljava/lang/Object;
.line 105
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/work/impl/utils/WorkTimer;->mListeners:Ljava/util/Map;
.line 106
monitor-exit v0
return-object v1
:catchall_0
move-exception v1
.line 107
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method
.method public getTimerMap()Ljava/util/Map;
.locals 2
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Landroidx/work/impl/model/WorkGenerationalId;",
"Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;",
">;"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/WorkTimer;->mLock:Ljava/lang/Object;
.line 97
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/work/impl/utils/WorkTimer;->mTimerMap:Ljava/util/Map;
.line 98
monitor-exit v0
return-object v1
:catchall_0
move-exception v1
.line 99
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method
.method public startTimer(Landroidx/work/impl/model/WorkGenerationalId;JLandroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;)V
.locals 5
.param p1 # Landroidx/work/impl/model/WorkGenerationalId;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # Landroidx/work/impl/utils/WorkTimer$TimeLimitExceededListener;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
iget-object v0, p0, Landroidx/work/impl/utils/WorkTimer;->mLock:Ljava/lang/Object;
.line 68
monitor-enter v0
.line 69
:try_start_0
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v1
sget-object v2, Landroidx/work/impl/utils/WorkTimer;->TAG:Ljava/lang/String;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Starting timer for "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v2, v3}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
.line 71
invoke-virtual {p0, p1}, Landroidx/work/impl/utils/WorkTimer;->stopTimer(Landroidx/work/impl/model/WorkGenerationalId;)V
.line 72
new-instance v1, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;
invoke-direct {v1, p0, p1}, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;-><init>(Landroidx/work/impl/utils/WorkTimer;Landroidx/work/impl/model/WorkGenerationalId;)V
iget-object v2, p0, Landroidx/work/impl/utils/WorkTimer;->mTimerMap:Ljava/util/Map;
.line 73
invoke-interface {v2, p1, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object v2, p0, Landroidx/work/impl/utils/WorkTimer;->mListeners:Ljava/util/Map;
.line 74
invoke-interface {v2, p1, p4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object p1, p0, Landroidx/work/impl/utils/WorkTimer;->mRunnableScheduler:Landroidx/work/RunnableScheduler;
.line 75
invoke-interface {p1, p2, p3, v1}, Landroidx/work/RunnableScheduler;->scheduleWithDelay(JLjava/lang/Runnable;)V
.line 76
monitor-exit v0
return-void
:catchall_0
move-exception p1
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p1
.end method
.method public stopTimer(Landroidx/work/impl/model/WorkGenerationalId;)V
.locals 5
.param p1 # Landroidx/work/impl/model/WorkGenerationalId;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
iget-object v0, p0, Landroidx/work/impl/utils/WorkTimer;->mLock:Ljava/lang/Object;
.line 85
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/work/impl/utils/WorkTimer;->mTimerMap:Ljava/util/Map;
.line 86
invoke-interface {v1, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/work/impl/utils/WorkTimer$WorkTimerRunnable;
if-eqz v1, :cond_0
.line 88
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v1
sget-object v2, Landroidx/work/impl/utils/WorkTimer;->TAG:Ljava/lang/String;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Stopping timer for "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v2, v3}, Landroidx/work/Logger;->debug(Ljava/lang/String;Ljava/lang/String;)V
iget-object v1, p0, Landroidx/work/impl/utils/WorkTimer;->mListeners:Ljava/util/Map;
.line 89
invoke-interface {v1, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
:catchall_0
move-exception p1
goto :goto_1
.line 91
:cond_0
:goto_0
monitor-exit v0
return-void
:goto_1
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p1
.end method

View File

@@ -0,0 +1,63 @@
.class public final Landroidx/work/impl/utils/WorkerExceptionUtilsKt;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
value = {
"SMAP\nWorkerExceptionUtils.kt\nKotlin\n*S Kotlin\n*F\n+ 1 WorkerExceptionUtils.kt\nandroidx/work/impl/utils/WorkerExceptionUtilsKt\n+ 2 LoggerExt.kt\nandroidx/work/LoggerExtKt\n*L\n1#1,37:1\n32#2:38\n*S KotlinDebug\n*F\n+ 1 WorkerExceptionUtils.kt\nandroidx/work/impl/utils/WorkerExceptionUtilsKt\n*L\n34#1:38\n*E\n"
}
.end annotation
# direct methods
.method public static final safeAccept(Landroidx/core/util/Consumer;Landroidx/work/WorkerExceptionInfo;Ljava/lang/String;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/core/util/Consumer<",
"Landroidx/work/WorkerExceptionInfo;",
">;",
"Landroidx/work/WorkerExceptionInfo;",
"Ljava/lang/String;",
")V"
}
.end annotation
const-string v0, "<this>"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "info"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "tag"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 32
:try_start_0
invoke-interface {p0, p1}, Landroidx/core/util/Consumer;->accept(Ljava/lang/Object;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:catchall_0
move-exception p0
.line 32
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object p1
const-string v0, "Exception handler threw an exception"
invoke-virtual {p1, p2, v0, p0}, Landroidx/work/Logger;->error(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
:goto_0
return-void
.end method

View File

@@ -0,0 +1,14 @@
.class synthetic Landroidx/work/impl/utils/futures/AbstractFuture$1;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1009
name = null
.end annotation

View File

@@ -0,0 +1,81 @@
.class abstract Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "AtomicHelper"
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 1063
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public synthetic constructor <init>(Landroidx/work/impl/utils/futures/AbstractFuture$1;)V
.locals 0
.line 1063
invoke-direct {p0}, Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;-><init>()V
return-void
.end method
# virtual methods
.method public abstract casListeners(Landroidx/work/impl/utils/futures/AbstractFuture;Landroidx/work/impl/utils/futures/AbstractFuture$Listener;Landroidx/work/impl/utils/futures/AbstractFuture$Listener;)Z
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
")Z"
}
.end annotation
.end method
.method public abstract casValue(Landroidx/work/impl/utils/futures/AbstractFuture;Ljava/lang/Object;Ljava/lang/Object;)Z
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
")Z"
}
.end annotation
.end method
.method public abstract casWaiters(Landroidx/work/impl/utils/futures/AbstractFuture;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)Z
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
")Z"
}
.end annotation
.end method
.method public abstract putNext(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)V
.end method
.method public abstract putThread(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Ljava/lang/Thread;)V
.end method

View File

@@ -0,0 +1,87 @@
.class final Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Cancellation"
.end annotation
# static fields
.field static final CAUSELESS_CANCELLED:Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
.field static final CAUSELESS_INTERRUPTED:Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
# instance fields
.field final cause:Ljava/lang/Throwable;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field final wasInterrupted:Z
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 244
sget-boolean v0, Landroidx/work/impl/utils/futures/AbstractFuture;->GENERATE_CANCELLATION_CAUSES:Z
const/4 v1, 0x0
if-eqz v0, :cond_0
sput-object v1, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;->CAUSELESS_CANCELLED:Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
sput-object v1, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;->CAUSELESS_INTERRUPTED:Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
goto :goto_0
.line 248
:cond_0
new-instance v0, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
const/4 v2, 0x0
invoke-direct {v0, v2, v1}, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V
sput-object v0, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;->CAUSELESS_CANCELLED:Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
.line 249
new-instance v0, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
const/4 v2, 0x1
invoke-direct {v0, v2, v1}, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V
sput-object v0, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;->CAUSELESS_INTERRUPTED:Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;
:goto_0
return-void
.end method
.method public constructor <init>(ZLjava/lang/Throwable;)V
.locals 0
.param p2 # Ljava/lang/Throwable;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.line 257
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-boolean p1, p0, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;->wasInterrupted:Z
iput-object p2, p0, Landroidx/work/impl/utils/futures/AbstractFuture$Cancellation;->cause:Ljava/lang/Throwable;
return-void
.end method

View File

@@ -0,0 +1,38 @@
.class Landroidx/work/impl/utils/futures/AbstractFuture$Failure$1;
.super Ljava/lang/Throwable;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture$Failure;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 224
invoke-direct {p0, p1}, Ljava/lang/Throwable;-><init>(Ljava/lang/String;)V
return-void
.end method
# virtual methods
.method public declared-synchronized fillInStackTrace()Ljava/lang/Throwable;
.locals 0
monitor-enter p0
.line 227
monitor-exit p0
return-object p0
.end method

View File

@@ -0,0 +1,61 @@
.class final Landroidx/work/impl/utils/futures/AbstractFuture$Failure;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Failure"
.end annotation
# static fields
.field static final FALLBACK_INSTANCE:Landroidx/work/impl/utils/futures/AbstractFuture$Failure;
# instance fields
.field final exception:Ljava/lang/Throwable;
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 222
new-instance v0, Landroidx/work/impl/utils/futures/AbstractFuture$Failure;
new-instance v1, Landroidx/work/impl/utils/futures/AbstractFuture$Failure$1;
const-string v2, "Failure occurred while trying to finish a future."
invoke-direct {v1, v2}, Landroidx/work/impl/utils/futures/AbstractFuture$Failure$1;-><init>(Ljava/lang/String;)V
invoke-direct {v0, v1}, Landroidx/work/impl/utils/futures/AbstractFuture$Failure;-><init>(Ljava/lang/Throwable;)V
sput-object v0, Landroidx/work/impl/utils/futures/AbstractFuture$Failure;->FALLBACK_INSTANCE:Landroidx/work/impl/utils/futures/AbstractFuture$Failure;
return-void
.end method
.method public constructor <init>(Ljava/lang/Throwable;)V
.locals 0
.line 232
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 233
invoke-static {p1}, Landroidx/work/impl/utils/futures/AbstractFuture;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/Throwable;
iput-object p1, p0, Landroidx/work/impl/utils/futures/AbstractFuture$Failure;->exception:Ljava/lang/Throwable;
return-void
.end method

View File

@@ -0,0 +1,59 @@
.class final Landroidx/work/impl/utils/futures/AbstractFuture$Listener;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Listener"
.end annotation
# static fields
.field static final TOMBSTONE:Landroidx/work/impl/utils/futures/AbstractFuture$Listener;
# instance fields
.field final executor:Ljava/util/concurrent/Executor;
.field next:Landroidx/work/impl/utils/futures/AbstractFuture$Listener;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field final task:Ljava/lang/Runnable;
# direct methods
.method static constructor <clinit>()V
.locals 2
.line 203
new-instance v0, Landroidx/work/impl/utils/futures/AbstractFuture$Listener;
const/4 v1, 0x0
invoke-direct {v0, v1, v1}, Landroidx/work/impl/utils/futures/AbstractFuture$Listener;-><init>(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
sput-object v0, Landroidx/work/impl/utils/futures/AbstractFuture$Listener;->TOMBSTONE:Landroidx/work/impl/utils/futures/AbstractFuture$Listener;
return-void
.end method
.method public constructor <init>(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
.locals 0
.line 211
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/futures/AbstractFuture$Listener;->task:Ljava/lang/Runnable;
iput-object p2, p0, Landroidx/work/impl/utils/futures/AbstractFuture$Listener;->executor:Ljava/util/concurrent/Executor;
return-void
.end method

View File

@@ -0,0 +1,212 @@
.class final Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;
.super Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "SafeAtomicHelper"
.end annotation
# instance fields
.field final listenersUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
">;"
}
.end annotation
.end field
.field final valueUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture;",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
.field final waiterNextUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
">;"
}
.end annotation
.end field
.field final waiterThreadUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
"Ljava/lang/Thread;",
">;"
}
.end annotation
.end field
.field final waitersUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
"Ljava/lang/Thread;",
">;",
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
">;",
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
">;",
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
">;",
"Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<",
"Landroidx/work/impl/utils/futures/AbstractFuture;",
"Ljava/lang/Object;",
">;)V"
}
.end annotation
const/4 v0, 0x0
.line 1093
invoke-direct {p0, v0}, Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;-><init>(Landroidx/work/impl/utils/futures/AbstractFuture$1;)V
iput-object p1, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->waiterThreadUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
iput-object p2, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->waiterNextUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
iput-object p3, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->waitersUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
iput-object p4, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->listenersUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
iput-object p5, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->valueUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
return-void
.end method
# virtual methods
.method public casListeners(Landroidx/work/impl/utils/futures/AbstractFuture;Landroidx/work/impl/utils/futures/AbstractFuture$Listener;Landroidx/work/impl/utils/futures/AbstractFuture$Listener;)Z
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
")Z"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->listenersUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.line 1118
invoke-static {v0, p1, p2, p3}, Landroidx/concurrent/futures/AbstractResolvableFuture$SafeAtomicHelper$$ExternalSyntheticBackportWithForwarding0;->m(Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method public casValue(Landroidx/work/impl/utils/futures/AbstractFuture;Ljava/lang/Object;Ljava/lang/Object;)Z
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
")Z"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->valueUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.line 1123
invoke-static {v0, p1, p2, p3}, Landroidx/concurrent/futures/AbstractResolvableFuture$SafeAtomicHelper$$ExternalSyntheticBackportWithForwarding0;->m(Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method public casWaiters(Landroidx/work/impl/utils/futures/AbstractFuture;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)Z
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
")Z"
}
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->waitersUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.line 1113
invoke-static {v0, p1, p2, p3}, Landroidx/concurrent/futures/AbstractResolvableFuture$SafeAtomicHelper$$ExternalSyntheticBackportWithForwarding0;->m(Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method public putNext(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)V
.locals 1
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->waiterNextUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.line 1108
invoke-virtual {v0, p1, p2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->lazySet(Ljava/lang/Object;Ljava/lang/Object;)V
return-void
.end method
.method public putThread(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Ljava/lang/Thread;)V
.locals 1
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SafeAtomicHelper;->waiterThreadUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.line 1103
invoke-virtual {v0, p1, p2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->lazySet(Ljava/lang/Object;Ljava/lang/Object;)V
return-void
.end method

View File

@@ -0,0 +1,112 @@
.class final Landroidx/work/impl/utils/futures/AbstractFuture$SetFuture;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "SetFuture"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<V:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Ljava/lang/Runnable;"
}
.end annotation
# instance fields
.field final future:Lcom/google/common/util/concurrent/ListenableFuture;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/common/util/concurrent/ListenableFuture;"
}
.end annotation
.end field
.field final owner:Landroidx/work/impl/utils/futures/AbstractFuture;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"TV;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Landroidx/work/impl/utils/futures/AbstractFuture;Lcom/google/common/util/concurrent/ListenableFuture;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"TV;>;",
"Lcom/google/common/util/concurrent/ListenableFuture;",
")V"
}
.end annotation
.line 268
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SetFuture;->owner:Landroidx/work/impl/utils/futures/AbstractFuture;
iput-object p2, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SetFuture;->future:Lcom/google/common/util/concurrent/ListenableFuture;
return-void
.end method
# virtual methods
.method public run()V
.locals 3
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SetFuture;->owner:Landroidx/work/impl/utils/futures/AbstractFuture;
.line 275
iget-object v0, v0, Landroidx/work/impl/utils/futures/AbstractFuture;->value:Ljava/lang/Object;
if-eq v0, p0, :cond_0
return-void
:cond_0
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SetFuture;->future:Lcom/google/common/util/concurrent/ListenableFuture;
.line 279
invoke-static {v0}, Landroidx/work/impl/utils/futures/AbstractFuture;->getFutureValue(Lcom/google/common/util/concurrent/ListenableFuture;)Ljava/lang/Object;
move-result-object v0
.line 280
sget-object v1, Landroidx/work/impl/utils/futures/AbstractFuture;->ATOMIC_HELPER:Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;
iget-object v2, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SetFuture;->owner:Landroidx/work/impl/utils/futures/AbstractFuture;
invoke-virtual {v1, v2, p0, v0}, Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;->casValue(Landroidx/work/impl/utils/futures/AbstractFuture;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_1
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$SetFuture;->owner:Landroidx/work/impl/utils/futures/AbstractFuture;
.line 281
invoke-static {v0}, Landroidx/work/impl/utils/futures/AbstractFuture;->complete(Landroidx/work/impl/utils/futures/AbstractFuture;)V
:cond_1
return-void
.end method

View File

@@ -0,0 +1,209 @@
.class final Landroidx/work/impl/utils/futures/AbstractFuture$SynchronizedHelper;
.super Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "SynchronizedHelper"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
const/4 v0, 0x0
.line 1134
invoke-direct {p0, v0}, Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;-><init>(Landroidx/work/impl/utils/futures/AbstractFuture$1;)V
return-void
.end method
# virtual methods
.method public casListeners(Landroidx/work/impl/utils/futures/AbstractFuture;Landroidx/work/impl/utils/futures/AbstractFuture$Listener;Landroidx/work/impl/utils/futures/AbstractFuture$Listener;)Z
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Listener;",
")Z"
}
.end annotation
.line 1160
monitor-enter p1
.line 1161
:try_start_0
iget-object v0, p1, Landroidx/work/impl/utils/futures/AbstractFuture;->listeners:Landroidx/work/impl/utils/futures/AbstractFuture$Listener;
if-ne v0, p2, :cond_0
.line 1162
iput-object p3, p1, Landroidx/work/impl/utils/futures/AbstractFuture;->listeners:Landroidx/work/impl/utils/futures/AbstractFuture$Listener;
.line 1163
monitor-exit p1
const/4 p1, 0x1
return p1
:catchall_0
move-exception p2
goto :goto_0
.line 1165
:cond_0
monitor-exit p1
const/4 p1, 0x0
return p1
.line 1166
:goto_0
monitor-exit p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p2
.end method
.method public casValue(Landroidx/work/impl/utils/futures/AbstractFuture;Ljava/lang/Object;Ljava/lang/Object;)Z
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
")Z"
}
.end annotation
.line 1171
monitor-enter p1
.line 1172
:try_start_0
iget-object v0, p1, Landroidx/work/impl/utils/futures/AbstractFuture;->value:Ljava/lang/Object;
if-ne v0, p2, :cond_0
.line 1173
iput-object p3, p1, Landroidx/work/impl/utils/futures/AbstractFuture;->value:Ljava/lang/Object;
.line 1174
monitor-exit p1
const/4 p1, 0x1
return p1
:catchall_0
move-exception p2
goto :goto_0
.line 1176
:cond_0
monitor-exit p1
const/4 p1, 0x0
return p1
.line 1177
:goto_0
monitor-exit p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p2
.end method
.method public casWaiters(Landroidx/work/impl/utils/futures/AbstractFuture;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)Z
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"*>;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
"Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;",
")Z"
}
.end annotation
.line 1149
monitor-enter p1
.line 1150
:try_start_0
iget-object v0, p1, Landroidx/work/impl/utils/futures/AbstractFuture;->waiters:Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
if-ne v0, p2, :cond_0
.line 1151
iput-object p3, p1, Landroidx/work/impl/utils/futures/AbstractFuture;->waiters:Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
.line 1152
monitor-exit p1
const/4 p1, 0x1
return p1
:catchall_0
move-exception p2
goto :goto_0
.line 1154
:cond_0
monitor-exit p1
const/4 p1, 0x0
return p1
.line 1155
:goto_0
monitor-exit p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p2
.end method
.method public putNext(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)V
.locals 0
.line 1144
iput-object p2, p1, Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;->next:Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
return-void
.end method
.method public putThread(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Ljava/lang/Thread;)V
.locals 0
.line 1139
iput-object p2, p1, Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;->thread:Ljava/lang/Thread;
return-void
.end method

View File

@@ -0,0 +1,105 @@
.class final Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/futures/AbstractFuture;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Waiter"
.end annotation
# static fields
.field static final TOMBSTONE:Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
# instance fields
.field volatile next:Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field volatile thread:Ljava/lang/Thread;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.locals 2
.line 123
new-instance v0, Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
const/4 v1, 0x0
invoke-direct {v0, v1}, Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;-><init>(Z)V
sput-object v0, Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;->TOMBSTONE:Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;
return-void
.end method
.method public constructor <init>()V
.locals 2
.line 137
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 139
sget-object v0, Landroidx/work/impl/utils/futures/AbstractFuture;->ATOMIC_HELPER:Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v1
invoke-virtual {v0, p0, v1}, Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;->putThread(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Ljava/lang/Thread;)V
return-void
.end method
.method public constructor <init>(Z)V
.locals 0
.line 134
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public setNext(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)V
.locals 1
.line 145
sget-object v0, Landroidx/work/impl/utils/futures/AbstractFuture;->ATOMIC_HELPER:Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;
invoke-virtual {v0, p0, p1}, Landroidx/work/impl/utils/futures/AbstractFuture$AtomicHelper;->putNext(Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;)V
return-void
.end method
.method public unpark()V
.locals 2
iget-object v0, p0, Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;->thread:Ljava/lang/Thread;
if-eqz v0, :cond_0
const/4 v1, 0x0
iput-object v1, p0, Landroidx/work/impl/utils/futures/AbstractFuture$Waiter;->thread:Ljava/lang/Thread;
.line 156
invoke-static {v0}, Ljava/util/concurrent/locks/LockSupport;->unpark(Ljava/lang/Thread;)V
:cond_0
return-void
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,130 @@
.class final enum Landroidx/work/impl/utils/futures/DirectExecutor;
.super Ljava/lang/Enum;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Executor;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Landroidx/work/impl/utils/futures/DirectExecutor;",
">;",
"Ljava/util/concurrent/Executor;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Landroidx/work/impl/utils/futures/DirectExecutor;
.field public static final enum INSTANCE:Landroidx/work/impl/utils/futures/DirectExecutor;
# direct methods
.method private static synthetic $values()[Landroidx/work/impl/utils/futures/DirectExecutor;
.locals 1
sget-object v0, Landroidx/work/impl/utils/futures/DirectExecutor;->INSTANCE:Landroidx/work/impl/utils/futures/DirectExecutor;
filled-new-array {v0}, [Landroidx/work/impl/utils/futures/DirectExecutor;
move-result-object v0
return-object v0
.end method
.method static constructor <clinit>()V
.locals 3
.line 33
new-instance v0, Landroidx/work/impl/utils/futures/DirectExecutor;
const-string v1, "INSTANCE"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Landroidx/work/impl/utils/futures/DirectExecutor;-><init>(Ljava/lang/String;I)V
sput-object v0, Landroidx/work/impl/utils/futures/DirectExecutor;->INSTANCE:Landroidx/work/impl/utils/futures/DirectExecutor;
.line 31
invoke-static {}, Landroidx/work/impl/utils/futures/DirectExecutor;->$values()[Landroidx/work/impl/utils/futures/DirectExecutor;
move-result-object v0
sput-object v0, Landroidx/work/impl/utils/futures/DirectExecutor;->$VALUES:[Landroidx/work/impl/utils/futures/DirectExecutor;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 32
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Landroidx/work/impl/utils/futures/DirectExecutor;
.locals 1
const-class v0, Landroidx/work/impl/utils/futures/DirectExecutor;
.line 31
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Landroidx/work/impl/utils/futures/DirectExecutor;
return-object p0
.end method
.method public static values()[Landroidx/work/impl/utils/futures/DirectExecutor;
.locals 1
sget-object v0, Landroidx/work/impl/utils/futures/DirectExecutor;->$VALUES:[Landroidx/work/impl/utils/futures/DirectExecutor;
.line 31
invoke-virtual {v0}, [Landroidx/work/impl/utils/futures/DirectExecutor;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Landroidx/work/impl/utils/futures/DirectExecutor;
return-object v0
.end method
# virtual methods
.method public execute(Ljava/lang/Runnable;)V
.locals 0
.line 37
invoke-interface {p1}, Ljava/lang/Runnable;->run()V
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 1
const-string v0, "DirectExecutor"
return-object v0
.end method

View File

@@ -0,0 +1,103 @@
.class public final Landroidx/work/impl/utils/futures/SettableFuture;
.super Landroidx/work/impl/utils/futures/AbstractFuture;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<V:",
"Ljava/lang/Object;",
">",
"Landroidx/work/impl/utils/futures/AbstractFuture<",
"TV;>;"
}
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 63
invoke-direct {p0}, Landroidx/work/impl/utils/futures/AbstractFuture;-><init>()V
return-void
.end method
.method public static create()Landroidx/work/impl/utils/futures/SettableFuture;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<V:",
"Ljava/lang/Object;",
">()",
"Landroidx/work/impl/utils/futures/SettableFuture<",
"TV;>;"
}
.end annotation
.line 45
new-instance v0, Landroidx/work/impl/utils/futures/SettableFuture;
invoke-direct {v0}, Landroidx/work/impl/utils/futures/SettableFuture;-><init>()V
return-object v0
.end method
# virtual methods
.method public set(Ljava/lang/Object;)Z
.locals 0
.param p1 # Ljava/lang/Object;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(TV;)Z"
}
.end annotation
.line 50
invoke-super {p0, p1}, Landroidx/work/impl/utils/futures/AbstractFuture;->set(Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method public setException(Ljava/lang/Throwable;)Z
.locals 0
.line 55
invoke-super {p0, p1}, Landroidx/work/impl/utils/futures/AbstractFuture;->setException(Ljava/lang/Throwable;)Z
move-result p1
return p1
.end method
.method public setFuture(Lcom/google/common/util/concurrent/ListenableFuture;)Z
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/common/util/concurrent/ListenableFuture;",
")Z"
}
.end annotation
.line 60
invoke-super {p0, p1}, Landroidx/work/impl/utils/futures/AbstractFuture;->setFuture(Lcom/google/common/util/concurrent/ListenableFuture;)Z
move-result p1
return p1
.end method

View File

@@ -0,0 +1,11 @@
.class interface abstract synthetic Landroidx/work/impl/utils/futures/package-info;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation

View File

@@ -0,0 +1,11 @@
.class interface abstract synthetic Landroidx/work/impl/utils/package-info;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation

View File

@@ -0,0 +1,11 @@
.class public interface abstract Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Executor;
# virtual methods
.method public abstract hasPendingTasks()Z
.end method

View File

@@ -0,0 +1,57 @@
.class public interface abstract Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# virtual methods
.method public executeOnTaskThread(Ljava/lang/Runnable;)V
.locals 1
.param p1 # Ljava/lang/Runnable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 46
invoke-interface {p0}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object v0
invoke-interface {v0, p1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
return-void
.end method
.method public abstract getMainThreadExecutor()Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end method
.method public abstract getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end method
.method public getTaskCoroutineDispatcher()Lkotlinx/coroutines/CoroutineDispatcher;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 61
invoke-interface {p0}, Landroidx/work/impl/utils/taskexecutor/TaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
move-result-object v0
invoke-static {v0}, Lkotlinx/coroutines/ExecutorsKt;->from(Ljava/util/concurrent/Executor;)Lkotlinx/coroutines/CoroutineDispatcher;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,53 @@
.class Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Executor;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;
# direct methods
.method public constructor <init>(Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;)V
.locals 0
iput-object p1, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor$1;->this$0:Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;
.line 49
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public execute(Ljava/lang/Runnable;)V
.locals 1
.param p1 # Ljava/lang/Runnable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
iget-object v0, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor$1;->this$0:Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;
.line 52
iget-object v0, v0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mMainThreadHandler:Landroid/os/Handler;
invoke-virtual {v0, p1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
return-void
.end method

View File

@@ -0,0 +1,117 @@
.class public Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/work/impl/utils/taskexecutor/TaskExecutor;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
# instance fields
.field private final mBackgroundExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
.field private final mMainThreadExecutor:Ljava/util/concurrent/Executor;
.field final mMainThreadHandler:Landroid/os/Handler;
.field private final mTaskDispatcher:Lkotlinx/coroutines/CoroutineDispatcher;
# direct methods
.method public constructor <init>(Ljava/util/concurrent/Executor;)V
.locals 2
.param p1 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 40
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 47
new-instance v0, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object v0, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mMainThreadHandler:Landroid/os/Handler;
.line 49
new-instance v0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor$1;
invoke-direct {v0, p0}, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor$1;-><init>(Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;)V
iput-object v0, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mMainThreadExecutor:Ljava/util/concurrent/Executor;
.line 43
new-instance v0, Landroidx/work/impl/utils/SerialExecutorImpl;
invoke-direct {v0, p1}, Landroidx/work/impl/utils/SerialExecutorImpl;-><init>(Ljava/util/concurrent/Executor;)V
iput-object v0, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mBackgroundExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
.line 44
invoke-static {v0}, Lkotlinx/coroutines/ExecutorsKt;->from(Ljava/util/concurrent/Executor;)Lkotlinx/coroutines/CoroutineDispatcher;
move-result-object p1
iput-object p1, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mTaskDispatcher:Lkotlinx/coroutines/CoroutineDispatcher;
return-void
.end method
# virtual methods
.method public getMainThreadExecutor()Ljava/util/concurrent/Executor;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mMainThreadExecutor:Ljava/util/concurrent/Executor;
return-object v0
.end method
.method public getSerialTaskExecutor()Landroidx/work/impl/utils/SerialExecutorImpl;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 0
iget-object v0, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mBackgroundExecutor:Landroidx/work/impl/utils/SerialExecutorImpl;
return-object v0
.end method
.method public bridge synthetic getSerialTaskExecutor()Landroidx/work/impl/utils/taskexecutor/SerialExecutor;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 34
invoke-virtual {p0}, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->getSerialTaskExecutor()Landroidx/work/impl/utils/SerialExecutorImpl;
move-result-object v0
return-object v0
.end method
.method public getTaskCoroutineDispatcher()Lkotlinx/coroutines/CoroutineDispatcher;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
iget-object v0, p0, Landroidx/work/impl/utils/taskexecutor/WorkManagerTaskExecutor;->mTaskDispatcher:Lkotlinx/coroutines/CoroutineDispatcher;
return-object v0
.end method

View File

@@ -0,0 +1,11 @@
.class interface abstract synthetic Landroidx/work/impl/utils/taskexecutor/package-info;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation