DelegatingWorkerFactory.smali
.class public Landroidx/work/DelegatingWorkerFactory;
.super Landroidx/work/WorkerFactory;
.source "SourceFile"
# static fields
.field private static final TAG:Ljava/lang/String;
# instance fields
.field private final mFactories:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Landroidx/work/WorkerFactory;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
const-string v0, "DelegatingWkrFctry"
.line 35
invoke-static {v0}, Landroidx/work/Logger;->tagWithPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Landroidx/work/DelegatingWorkerFactory;->TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>()V
.registers 2
.line 43
invoke-direct {p0}, Landroidx/work/WorkerFactory;-><init>()V
.line 44
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
iput-object v0, p0, Landroidx/work/DelegatingWorkerFactory;->mFactories:Ljava/util/List;
return-void
.end method
# virtual methods
.method public final addFactory(Landroidx/work/WorkerFactory;)V
.registers 3
.line 59
iget-object v0, p0, Landroidx/work/DelegatingWorkerFactory;->mFactories:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
return-void
.end method
.method public final createWorker(Landroid/content/Context;Ljava/lang/String;Landroidx/work/WorkerParameters;)Landroidx/work/ListenableWorker;
.registers 7
.line 67
iget-object v0, p0, Landroidx/work/DelegatingWorkerFactory;->mFactories:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_6
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_34
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/work/WorkerFactory;
.line 69
:try_start_12
invoke-virtual {v1, p1, p2, p3}, Landroidx/work/WorkerFactory;->createWorker(Landroid/content/Context;Ljava/lang/String;Landroidx/work/WorkerParameters;)Landroidx/work/ListenableWorker;
move-result-object v1
:try_end_16
.catchall {:try_start_12 .. :try_end_16} :catchall_19
if-eqz v1, :cond_6
return-object v1
:catchall_19
move-exception p1
const/4 p3, 0x1
new-array v0, p3, [Ljava/lang/Object;
const/4 v1, 0x0
aput-object p2, v0, v1
const-string p2, "Unable to instantiate a ListenableWorker (%s)"
.line 76
invoke-static {p2, v0}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
.line 77
invoke-static {}, Landroidx/work/Logger;->get()Landroidx/work/Logger;
move-result-object v0
sget-object v2, Landroidx/work/DelegatingWorkerFactory;->TAG:Ljava/lang/String;
new-array p3, p3, [Ljava/lang/Throwable;
aput-object p1, p3, v1
invoke-virtual {v0, v2, p2, p3}, Landroidx/work/Logger;->error(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Throwable;)V
.line 78
throw p1
:cond_34
const/4 p1, 0x0
return-object p1
.end method
.method getFactories()Ljava/util/List;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Landroidx/work/WorkerFactory;",
">;"
}
.end annotation
.line 50
iget-object v0, p0, Landroidx/work/DelegatingWorkerFactory;->mFactories:Ljava/util/List;
return-object v0
.end method