- Added realracing3-community.apk (71.57 MB) - Removed 32-bit support (armeabi-v7a) - Only includes arm64-v8a libraries - Decompiled source code included - Added README-community.md with analysis
234 lines
13 KiB
Java
234 lines
13 KiB
Java
package androidx.work.impl.constraints;
|
|
|
|
import androidx.work.Logger;
|
|
import androidx.work.impl.constraints.ConstraintsState;
|
|
import androidx.work.impl.constraints.controllers.ConstraintController;
|
|
import androidx.work.impl.model.WorkSpec;
|
|
import java.util.ArrayList;
|
|
import java.util.Iterator;
|
|
import java.util.List;
|
|
import kotlin.ResultKt;
|
|
import kotlin.Unit;
|
|
import kotlin.collections.CollectionsKt__IterablesKt;
|
|
import kotlin.collections.CollectionsKt___CollectionsKt;
|
|
import kotlin.coroutines.Continuation;
|
|
import kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsKt;
|
|
import kotlin.coroutines.jvm.internal.DebugMetadata;
|
|
import kotlin.coroutines.jvm.internal.SuspendLambda;
|
|
import kotlin.jvm.functions.Function0;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.functions.Function3;
|
|
import kotlin.jvm.internal.Intrinsics;
|
|
import kotlin.jvm.internal.SourceDebugExtension;
|
|
import kotlinx.coroutines.flow.Flow;
|
|
import kotlinx.coroutines.flow.FlowCollector;
|
|
import kotlinx.coroutines.flow.FlowKt;
|
|
import kotlinx.coroutines.flow.internal.CombineKt;
|
|
|
|
@SourceDebugExtension({"SMAP\nWorkConstraintsTracker.kt\nKotlin\n*S Kotlin\n*F\n+ 1 WorkConstraintsTracker.kt\nandroidx/work/impl/constraints/WorkConstraintsTracker\n+ 2 _Collections.kt\nkotlin/collections/CollectionsKt___CollectionsKt\n+ 3 Zip.kt\nkotlinx/coroutines/flow/FlowKt__ZipKt\n+ 4 ArraysJVM.kt\nkotlin/collections/ArraysKt__ArraysJVMKt\n+ 5 SafeCollector.common.kt\nkotlinx/coroutines/flow/internal/SafeCollector_commonKt\n*L\n1#1,205:1\n766#2:206\n857#2,2:207\n1549#2:209\n1620#2,3:210\n766#2:218\n857#2,2:219\n287#3:213\n288#3:216\n37#4,2:214\n107#5:217\n*S KotlinDebug\n*F\n+ 1 WorkConstraintsTracker.kt\nandroidx/work/impl/constraints/WorkConstraintsTracker\n*L\n92#1:206\n92#1:207,2\n92#1:209\n92#1:210,3\n100#1:218\n100#1:219,2\n93#1:213\n93#1:216\n93#1:214,2\n93#1:217\n*E\n"})
|
|
/* loaded from: classes.dex */
|
|
public final class WorkConstraintsTracker {
|
|
private final List<ConstraintController> controllers;
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public WorkConstraintsTracker(List<? extends ConstraintController> controllers) {
|
|
Intrinsics.checkNotNullParameter(controllers, "controllers");
|
|
this.controllers = controllers;
|
|
}
|
|
|
|
/* JADX WARN: Illegal instructions before constructor call */
|
|
/*
|
|
Code decompiled incorrectly, please refer to instructions dump.
|
|
To view partially-correct add '--show-bad-code' argument
|
|
*/
|
|
public WorkConstraintsTracker(androidx.work.impl.constraints.trackers.Trackers r4) {
|
|
/*
|
|
r3 = this;
|
|
java.lang.String r0 = "trackers"
|
|
kotlin.jvm.internal.Intrinsics.checkNotNullParameter(r4, r0)
|
|
r0 = 8
|
|
androidx.work.impl.constraints.controllers.ConstraintController[] r0 = new androidx.work.impl.constraints.controllers.ConstraintController[r0]
|
|
androidx.work.impl.constraints.controllers.BatteryChargingController r1 = new androidx.work.impl.constraints.controllers.BatteryChargingController
|
|
androidx.work.impl.constraints.trackers.ConstraintTracker r2 = r4.getBatteryChargingTracker()
|
|
r1.<init>(r2)
|
|
r2 = 0
|
|
r0[r2] = r1
|
|
androidx.work.impl.constraints.controllers.BatteryNotLowController r1 = new androidx.work.impl.constraints.controllers.BatteryNotLowController
|
|
androidx.work.impl.constraints.trackers.BatteryNotLowTracker r2 = r4.getBatteryNotLowTracker()
|
|
r1.<init>(r2)
|
|
r2 = 1
|
|
r0[r2] = r1
|
|
androidx.work.impl.constraints.controllers.StorageNotLowController r1 = new androidx.work.impl.constraints.controllers.StorageNotLowController
|
|
androidx.work.impl.constraints.trackers.ConstraintTracker r2 = r4.getStorageNotLowTracker()
|
|
r1.<init>(r2)
|
|
r2 = 2
|
|
r0[r2] = r1
|
|
androidx.work.impl.constraints.controllers.NetworkConnectedController r1 = new androidx.work.impl.constraints.controllers.NetworkConnectedController
|
|
androidx.work.impl.constraints.trackers.ConstraintTracker r2 = r4.getNetworkStateTracker()
|
|
r1.<init>(r2)
|
|
r2 = 3
|
|
r0[r2] = r1
|
|
androidx.work.impl.constraints.controllers.NetworkUnmeteredController r1 = new androidx.work.impl.constraints.controllers.NetworkUnmeteredController
|
|
androidx.work.impl.constraints.trackers.ConstraintTracker r2 = r4.getNetworkStateTracker()
|
|
r1.<init>(r2)
|
|
r2 = 4
|
|
r0[r2] = r1
|
|
androidx.work.impl.constraints.controllers.NetworkNotRoamingController r1 = new androidx.work.impl.constraints.controllers.NetworkNotRoamingController
|
|
androidx.work.impl.constraints.trackers.ConstraintTracker r2 = r4.getNetworkStateTracker()
|
|
r1.<init>(r2)
|
|
r2 = 5
|
|
r0[r2] = r1
|
|
androidx.work.impl.constraints.controllers.NetworkMeteredController r1 = new androidx.work.impl.constraints.controllers.NetworkMeteredController
|
|
androidx.work.impl.constraints.trackers.ConstraintTracker r2 = r4.getNetworkStateTracker()
|
|
r1.<init>(r2)
|
|
r2 = 6
|
|
r0[r2] = r1
|
|
int r1 = android.os.Build.VERSION.SDK_INT
|
|
r2 = 28
|
|
if (r1 < r2) goto L6c
|
|
android.content.Context r4 = r4.getContext()
|
|
androidx.work.impl.constraints.NetworkRequestConstraintController r4 = androidx.work.impl.constraints.WorkConstraintsTrackerKt.NetworkRequestConstraintController(r4)
|
|
goto L6d
|
|
L6c:
|
|
r4 = 0
|
|
L6d:
|
|
r1 = 7
|
|
r0[r1] = r4
|
|
java.util.List r4 = kotlin.collections.CollectionsKt.listOfNotNull(r0)
|
|
r3.<init>(r4)
|
|
return
|
|
*/
|
|
throw new UnsupportedOperationException("Method not decompiled: androidx.work.impl.constraints.WorkConstraintsTracker.<init>(androidx.work.impl.constraints.trackers.Trackers):void");
|
|
}
|
|
|
|
public final Flow track(WorkSpec spec) {
|
|
Intrinsics.checkNotNullParameter(spec, "spec");
|
|
List<ConstraintController> list = this.controllers;
|
|
ArrayList arrayList = new ArrayList();
|
|
for (Object obj : list) {
|
|
if (((ConstraintController) obj).hasConstraint(spec)) {
|
|
arrayList.add(obj);
|
|
}
|
|
}
|
|
ArrayList arrayList2 = new ArrayList(CollectionsKt__IterablesKt.collectionSizeOrDefault(arrayList, 10));
|
|
Iterator it = arrayList.iterator();
|
|
while (it.hasNext()) {
|
|
arrayList2.add(((ConstraintController) it.next()).track(spec.constraints));
|
|
}
|
|
final Flow[] flowArr = (Flow[]) CollectionsKt___CollectionsKt.toList(arrayList2).toArray(new Flow[0]);
|
|
return FlowKt.distinctUntilChanged(new Flow() { // from class: androidx.work.impl.constraints.WorkConstraintsTracker$track$$inlined$combine$1
|
|
@Override // kotlinx.coroutines.flow.Flow
|
|
public Object collect(FlowCollector flowCollector, Continuation continuation) {
|
|
Object coroutine_suspended;
|
|
final Flow[] flowArr2 = flowArr;
|
|
Object combineInternal = CombineKt.combineInternal(flowCollector, flowArr2, new Function0() { // from class: androidx.work.impl.constraints.WorkConstraintsTracker$track$$inlined$combine$1.2
|
|
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
|
|
{
|
|
super(0);
|
|
}
|
|
|
|
@Override // kotlin.jvm.functions.Function0
|
|
public final ConstraintsState[] invoke() {
|
|
return new ConstraintsState[flowArr2.length];
|
|
}
|
|
}, new AnonymousClass3(null), continuation);
|
|
coroutine_suspended = IntrinsicsKt__IntrinsicsKt.getCOROUTINE_SUSPENDED();
|
|
return combineInternal == coroutine_suspended ? combineInternal : Unit.INSTANCE;
|
|
}
|
|
|
|
@DebugMetadata(c = "androidx.work.impl.constraints.WorkConstraintsTracker$track$$inlined$combine$1$3", f = "WorkConstraintsTracker.kt", l = {292}, m = "invokeSuspend")
|
|
@SourceDebugExtension({"SMAP\nZip.kt\nKotlin\n*S Kotlin\n*F\n+ 1 Zip.kt\nkotlinx/coroutines/flow/FlowKt__ZipKt$combine$6$2\n+ 2 WorkConstraintsTracker.kt\nandroidx/work/impl/constraints/WorkConstraintsTracker\n+ 3 _Arrays.kt\nkotlin/collections/ArraysKt___ArraysKt\n*L\n1#1,332:1\n94#2:333\n1282#3,2:334\n*S KotlinDebug\n*F\n+ 1 WorkConstraintsTracker.kt\nandroidx/work/impl/constraints/WorkConstraintsTracker\n*L\n94#1:334,2\n*E\n"})
|
|
/* renamed from: androidx.work.impl.constraints.WorkConstraintsTracker$track$$inlined$combine$1$3, reason: invalid class name */
|
|
public static final class AnonymousClass3 extends SuspendLambda implements Function3 {
|
|
private /* synthetic */ Object L$0;
|
|
/* synthetic */ Object L$1;
|
|
int label;
|
|
|
|
public AnonymousClass3(Continuation continuation) {
|
|
super(3, continuation);
|
|
}
|
|
|
|
@Override // kotlin.jvm.functions.Function3
|
|
public final Object invoke(FlowCollector flowCollector, ConstraintsState[] constraintsStateArr, Continuation continuation) {
|
|
AnonymousClass3 anonymousClass3 = new AnonymousClass3(continuation);
|
|
anonymousClass3.L$0 = flowCollector;
|
|
anonymousClass3.L$1 = constraintsStateArr;
|
|
return anonymousClass3.invokeSuspend(Unit.INSTANCE);
|
|
}
|
|
|
|
@Override // kotlin.coroutines.jvm.internal.BaseContinuationImpl
|
|
public final Object invokeSuspend(Object obj) {
|
|
Object coroutine_suspended;
|
|
ConstraintsState constraintsState;
|
|
coroutine_suspended = IntrinsicsKt__IntrinsicsKt.getCOROUTINE_SUSPENDED();
|
|
int i = this.label;
|
|
if (i == 0) {
|
|
ResultKt.throwOnFailure(obj);
|
|
FlowCollector flowCollector = (FlowCollector) this.L$0;
|
|
ConstraintsState[] constraintsStateArr = (ConstraintsState[]) ((Object[]) this.L$1);
|
|
int length = constraintsStateArr.length;
|
|
int i2 = 0;
|
|
while (true) {
|
|
if (i2 >= length) {
|
|
constraintsState = null;
|
|
break;
|
|
}
|
|
constraintsState = constraintsStateArr[i2];
|
|
if (!Intrinsics.areEqual(constraintsState, ConstraintsState.ConstraintsMet.INSTANCE)) {
|
|
break;
|
|
}
|
|
i2++;
|
|
}
|
|
if (constraintsState == null) {
|
|
constraintsState = ConstraintsState.ConstraintsMet.INSTANCE;
|
|
}
|
|
this.label = 1;
|
|
if (flowCollector.emit(constraintsState, this) == coroutine_suspended) {
|
|
return coroutine_suspended;
|
|
}
|
|
} else {
|
|
if (i != 1) {
|
|
throw new IllegalStateException("call to 'resume' before 'invoke' with coroutine");
|
|
}
|
|
ResultKt.throwOnFailure(obj);
|
|
}
|
|
return Unit.INSTANCE;
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
public final boolean areAllConstraintsMet(WorkSpec workSpec) {
|
|
String str;
|
|
String joinToString$default;
|
|
Intrinsics.checkNotNullParameter(workSpec, "workSpec");
|
|
List<ConstraintController> list = this.controllers;
|
|
ArrayList arrayList = new ArrayList();
|
|
for (Object obj : list) {
|
|
if (((ConstraintController) obj).isCurrentlyConstrained(workSpec)) {
|
|
arrayList.add(obj);
|
|
}
|
|
}
|
|
if (!arrayList.isEmpty()) {
|
|
Logger logger = Logger.get();
|
|
str = WorkConstraintsTrackerKt.TAG;
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.append("Work ");
|
|
sb.append(workSpec.id);
|
|
sb.append(" constrained by ");
|
|
joinToString$default = CollectionsKt___CollectionsKt.joinToString$default(arrayList, null, null, null, 0, null, new Function1() { // from class: androidx.work.impl.constraints.WorkConstraintsTracker$areAllConstraintsMet$1
|
|
@Override // kotlin.jvm.functions.Function1
|
|
public final CharSequence invoke(ConstraintController it) {
|
|
Intrinsics.checkNotNullParameter(it, "it");
|
|
String simpleName = it.getClass().getSimpleName();
|
|
Intrinsics.checkNotNullExpressionValue(simpleName, "it.javaClass.simpleName");
|
|
return simpleName;
|
|
}
|
|
}, 31, null);
|
|
sb.append(joinToString$default);
|
|
logger.debug(str, sb.toString());
|
|
}
|
|
return arrayList.isEmpty();
|
|
}
|
|
}
|