YD_AllInOneApp/decompiled/smali/androidx/work/WorkRequest$Builder.smali
2026-07-06 19:54:44 +08:00

847 lines
22 KiB
Smali

.class public abstract Landroidx/work/WorkRequest$Builder;
.super Ljava/lang/Object;
.source "WorkRequest.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/work/WorkRequest;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "Builder"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<B:",
"Landroidx/work/WorkRequest$Builder<",
"**>;W:",
"Landroidx/work/WorkRequest;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field mBackoffCriteriaSet:Z
.field mId:Ljava/util/UUID;
.field mTags:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
.field mWorkSpec:Landroidx/work/impl/model/WorkSpec;
.field mWorkerClass:Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Class<",
"+",
"Landroidx/work/ListenableWorker;",
">;"
}
.end annotation
.end field
# direct methods
.method constructor <init>(Ljava/lang/Class;)V
.locals 3
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"workerClass"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"+",
"Landroidx/work/ListenableWorker;",
">;)V"
}
.end annotation
.line 129
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 123
iput-boolean v0, p0, Landroidx/work/WorkRequest$Builder;->mBackoffCriteriaSet:Z
.line 126
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
iput-object v0, p0, Landroidx/work/WorkRequest$Builder;->mTags:Ljava/util/Set;
.line 130
invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID;
move-result-object v0
iput-object v0, p0, Landroidx/work/WorkRequest$Builder;->mId:Ljava/util/UUID;
.line 131
iput-object p1, p0, Landroidx/work/WorkRequest$Builder;->mWorkerClass:Ljava/lang/Class;
.line 132
new-instance v0, Landroidx/work/impl/model/WorkSpec;
iget-object v1, p0, Landroidx/work/WorkRequest$Builder;->mId:Ljava/util/UUID;
invoke-virtual {v1}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v2
invoke-direct {v0, v1, v2}, Landroidx/work/impl/model/WorkSpec;-><init>(Ljava/lang/String;Ljava/lang/String;)V
iput-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
.line 133
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {p0, p1}, Landroidx/work/WorkRequest$Builder;->addTag(Ljava/lang/String;)Landroidx/work/WorkRequest$Builder;
return-void
.end method
# virtual methods
.method public final addTag(Ljava/lang/String;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"tag"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")TB;"
}
.end annotation
.line 210
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mTags:Ljava/util/Set;
invoke-interface {v0, p1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
.line 211
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final build()Landroidx/work/WorkRequest;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"()TW;"
}
.end annotation
.line 311
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->buildInternal()Landroidx/work/WorkRequest;
move-result-object v0
.line 312
iget-object v1, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iget-object v1, v1, Landroidx/work/impl/model/WorkSpec;->constraints:Landroidx/work/Constraints;
.line 314
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x18
if-lt v2, v3, :cond_0
.line 315
invoke-virtual {v1}, Landroidx/work/Constraints;->hasContentUriTriggers()Z
move-result v2
if-nez v2, :cond_2
.line 316
:cond_0
invoke-virtual {v1}, Landroidx/work/Constraints;->requiresBatteryNotLow()Z
move-result v2
if-nez v2, :cond_2
.line 317
invoke-virtual {v1}, Landroidx/work/Constraints;->requiresCharging()Z
move-result v2
if-nez v2, :cond_2
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x17
if-lt v2, v3, :cond_1
.line 318
invoke-virtual {v1}, Landroidx/work/Constraints;->requiresDeviceIdle()Z
move-result v1
if-eqz v1, :cond_1
goto :goto_0
:cond_1
const/4 v1, 0x0
goto :goto_1
:cond_2
:goto_0
const/4 v1, 0x1
.line 320
:goto_1
iget-object v2, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iget-boolean v2, v2, Landroidx/work/impl/model/WorkSpec;->expedited:Z
if-eqz v2, :cond_4
if-nez v1, :cond_3
goto :goto_2
.line 321
:cond_3
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Expedited jobs only support network and storage constraints"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.line 325
:cond_4
:goto_2
invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID;
move-result-object v1
iput-object v1, p0, Landroidx/work/WorkRequest$Builder;->mId:Ljava/util/UUID;
.line 326
new-instance v1, Landroidx/work/impl/model/WorkSpec;
iget-object v2, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-direct {v1, v2}, Landroidx/work/impl/model/WorkSpec;-><init>(Landroidx/work/impl/model/WorkSpec;)V
iput-object v1, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
.line 327
iget-object v2, p0, Landroidx/work/WorkRequest$Builder;->mId:Ljava/util/UUID;
invoke-virtual {v2}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v2
iput-object v2, v1, Landroidx/work/impl/model/WorkSpec;->id:Ljava/lang/String;
return-object v0
.end method
.method abstract buildInternal()Landroidx/work/WorkRequest;
.annotation system Ldalvik/annotation/Signature;
value = {
"()TW;"
}
.end annotation
.end method
.method abstract getThis()Landroidx/work/WorkRequest$Builder;
.annotation system Ldalvik/annotation/Signature;
value = {
"()TB;"
}
.end annotation
.end method
.method public final keepResultsForAtLeast(JLjava/util/concurrent/TimeUnit;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"duration",
"timeUnit"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(J",
"Ljava/util/concurrent/TimeUnit;",
")TB;"
}
.end annotation
.line 231
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toMillis(J)J
move-result-wide p1
iput-wide p1, v0, Landroidx/work/impl/model/WorkSpec;->minimumRetentionDuration:J
.line 232
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final keepResultsForAtLeast(Ljava/time/Duration;)Landroidx/work/WorkRequest$Builder;
.locals 3
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"duration"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/time/Duration;",
")TB;"
}
.end annotation
.line 252
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p1}, Ljava/time/Duration;->toMillis()J
move-result-wide v1
iput-wide v1, v0, Landroidx/work/impl/model/WorkSpec;->minimumRetentionDuration:J
.line 253
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final setBackoffCriteria(Landroidx/work/BackoffPolicy;JLjava/util/concurrent/TimeUnit;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"backoffPolicy",
"backoffDelay",
"timeUnit"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/BackoffPolicy;",
"J",
"Ljava/util/concurrent/TimeUnit;",
")TB;"
}
.end annotation
const/4 v0, 0x1
.line 152
iput-boolean v0, p0, Landroidx/work/WorkRequest$Builder;->mBackoffCriteriaSet:Z
.line 153
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iput-object p1, v0, Landroidx/work/impl/model/WorkSpec;->backoffPolicy:Landroidx/work/BackoffPolicy;
.line 154
iget-object p1, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p4, p2, p3}, Ljava/util/concurrent/TimeUnit;->toMillis(J)J
move-result-wide p2
invoke-virtual {p1, p2, p3}, Landroidx/work/impl/model/WorkSpec;->setBackoffDelayDuration(J)V
.line 155
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final setBackoffCriteria(Landroidx/work/BackoffPolicy;Ljava/time/Duration;)Landroidx/work/WorkRequest$Builder;
.locals 2
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"backoffPolicy",
"duration"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/BackoffPolicy;",
"Ljava/time/Duration;",
")TB;"
}
.end annotation
const/4 v0, 0x1
.line 173
iput-boolean v0, p0, Landroidx/work/WorkRequest$Builder;->mBackoffCriteriaSet:Z
.line 174
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iput-object p1, v0, Landroidx/work/impl/model/WorkSpec;->backoffPolicy:Landroidx/work/BackoffPolicy;
.line 175
iget-object p1, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p2}, Ljava/time/Duration;->toMillis()J
move-result-wide v0
invoke-virtual {p1, v0, v1}, Landroidx/work/impl/model/WorkSpec;->setBackoffDelayDuration(J)V
.line 176
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final setConstraints(Landroidx/work/Constraints;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"constraints"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/Constraints;",
")TB;"
}
.end annotation
.line 186
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iput-object p1, v0, Landroidx/work/impl/model/WorkSpec;->constraints:Landroidx/work/Constraints;
.line 187
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public setExpedited(Landroidx/work/OutOfQuotaPolicy;)Landroidx/work/WorkRequest$Builder;
.locals 2
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"policy"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/OutOfQuotaPolicy;",
")TB;"
}
.end annotation
.line 300
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
const/4 v1, 0x1
iput-boolean v1, v0, Landroidx/work/impl/model/WorkSpec;->expedited:Z
.line 301
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iput-object p1, v0, Landroidx/work/impl/model/WorkSpec;->outOfQuotaPolicy:Landroidx/work/OutOfQuotaPolicy;
.line 302
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public setInitialDelay(JLjava/util/concurrent/TimeUnit;)Landroidx/work/WorkRequest$Builder;
.locals 2
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"duration",
"timeUnit"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(J",
"Ljava/util/concurrent/TimeUnit;",
")TB;"
}
.end annotation
.line 266
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toMillis(J)J
move-result-wide p1
iput-wide p1, v0, Landroidx/work/impl/model/WorkSpec;->initialDelay:J
.line 267
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide p1
const-wide v0, 0x7fffffffffffffffL
sub-long/2addr v0, p1
iget-object p1, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iget-wide p1, p1, Landroidx/work/impl/model/WorkSpec;->initialDelay:J
cmp-long p1, v0, p1
if-lez p1, :cond_0
.line 271
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.line 268
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "The given initial delay is too large and will cause an overflow!"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public setInitialDelay(Ljava/time/Duration;)Landroidx/work/WorkRequest$Builder;
.locals 4
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"duration"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/time/Duration;",
")TB;"
}
.end annotation
.line 284
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p1}, Ljava/time/Duration;->toMillis()J
move-result-wide v1
iput-wide v1, v0, Landroidx/work/impl/model/WorkSpec;->initialDelay:J
.line 285
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
const-wide v2, 0x7fffffffffffffffL
sub-long/2addr v2, v0
iget-object p1, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iget-wide v0, p1, Landroidx/work/impl/model/WorkSpec;->initialDelay:J
cmp-long p1, v2, v0
if-lez p1, :cond_0
.line 289
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.line 286
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "The given initial delay is too large and will cause an overflow!"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public final setInitialRunAttemptCount(I)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"runAttemptCount"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)TB;"
}
.end annotation
.line 359
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iput p1, v0, Landroidx/work/impl/model/WorkSpec;->runAttemptCount:I
.line 360
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final setInitialState(Landroidx/work/WorkInfo$State;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"state"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/WorkInfo$State;",
")TB;"
}
.end annotation
.line 345
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iput-object p1, v0, Landroidx/work/impl/model/WorkSpec;->state:Landroidx/work/WorkInfo$State;
.line 346
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final setInputData(Landroidx/work/Data;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"inputData"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/work/Data;",
")TB;"
}
.end annotation
.line 198
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
iput-object p1, v0, Landroidx/work/impl/model/WorkSpec;->input:Landroidx/work/Data;
.line 199
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final setPeriodStartTime(JLjava/util/concurrent/TimeUnit;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"periodStartTime",
"timeUnit"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(J",
"Ljava/util/concurrent/TimeUnit;",
")TB;"
}
.end annotation
.line 376
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toMillis(J)J
move-result-wide p1
iput-wide p1, v0, Landroidx/work/impl/model/WorkSpec;->periodStartTime:J
.line 377
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method
.method public final setScheduleRequestedAt(JLjava/util/concurrent/TimeUnit;)Landroidx/work/WorkRequest$Builder;
.locals 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"scheduleRequestedAt",
"timeUnit"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(J",
"Ljava/util/concurrent/TimeUnit;",
")TB;"
}
.end annotation
.line 393
iget-object v0, p0, Landroidx/work/WorkRequest$Builder;->mWorkSpec:Landroidx/work/impl/model/WorkSpec;
invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toMillis(J)J
move-result-wide p1
iput-wide p1, v0, Landroidx/work/impl/model/WorkSpec;->scheduleRequestedAt:J
.line 394
invoke-virtual {p0}, Landroidx/work/WorkRequest$Builder;->getThis()Landroidx/work/WorkRequest$Builder;
move-result-object p1
return-object p1
.end method