discord-jadx/app/src/main/java/androidx/work/OneTimeWorkRequest.java

61 lines
2.2 KiB
Java

package androidx.work;
import android.os.Build;
import androidx.annotation.NonNull;
import androidx.work.WorkRequest;
import androidx.work.impl.model.WorkSpec;
import java.util.ArrayList;
import java.util.List;
public final class OneTimeWorkRequest extends WorkRequest {
public static final class Builder extends WorkRequest.Builder<Builder, OneTimeWorkRequest> {
public Builder(@NonNull Class<? extends ListenableWorker> cls) {
super(cls);
this.mWorkSpec.inputMergerClassName = OverwritingInputMerger.class.getName();
}
@Override // androidx.work.WorkRequest.Builder
@NonNull
public OneTimeWorkRequest buildInternal() {
if (!this.mBackoffCriteriaSet || Build.VERSION.SDK_INT < 23 || !this.mWorkSpec.constraints.requiresDeviceIdle()) {
WorkSpec workSpec = this.mWorkSpec;
if (!workSpec.runInForeground || Build.VERSION.SDK_INT < 23 || !workSpec.constraints.requiresDeviceIdle()) {
return new OneTimeWorkRequest(this);
}
throw new IllegalArgumentException("Cannot run in foreground with an idle mode constraint");
}
throw new IllegalArgumentException("Cannot set backoff criteria on an idle mode job");
}
@Override // androidx.work.WorkRequest.Builder
@NonNull
public Builder getThis() {
return this;
}
@NonNull
public Builder setInputMerger(@NonNull Class<? extends InputMerger> cls) {
this.mWorkSpec.inputMergerClassName = cls.getName();
return this;
}
}
public OneTimeWorkRequest(Builder builder) {
super(builder.mId, builder.mWorkSpec, builder.mTags);
}
@NonNull
public static OneTimeWorkRequest from(@NonNull Class<? extends ListenableWorker> cls) {
return new Builder(cls).build();
}
@NonNull
public static List<OneTimeWorkRequest> from(@NonNull List<Class<? extends ListenableWorker>> list) {
ArrayList arrayList = new ArrayList(list.size());
for (Class<? extends ListenableWorker> cls : list) {
arrayList.add(new Builder(cls).build());
}
return arrayList;
}
}