- 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
115 lines
6.2 KiB
Java
115 lines
6.2 KiB
Java
package androidx.room;
|
|
|
|
import android.os.CancellationSignal;
|
|
import androidx.annotation.RestrictTo;
|
|
import androidx.sqlite.db.SupportSQLiteCompat;
|
|
import java.util.concurrent.Callable;
|
|
import kotlin.Unit;
|
|
import kotlin.coroutines.Continuation;
|
|
import kotlin.coroutines.ContinuationInterceptor;
|
|
import kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsJvmKt;
|
|
import kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsKt;
|
|
import kotlin.coroutines.jvm.internal.DebugProbesKt;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import kotlin.jvm.internal.SourceDebugExtension;
|
|
import kotlinx.coroutines.BuildersKt;
|
|
import kotlinx.coroutines.BuildersKt__Builders_commonKt;
|
|
import kotlinx.coroutines.CancellableContinuationImpl;
|
|
import kotlinx.coroutines.GlobalScope;
|
|
import kotlinx.coroutines.Job;
|
|
import kotlinx.coroutines.flow.Flow;
|
|
import kotlinx.coroutines.flow.FlowKt;
|
|
|
|
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
|
|
/* loaded from: classes.dex */
|
|
public final class CoroutinesRoom {
|
|
public static final Companion Companion = new Companion(null);
|
|
|
|
public static final <R> Flow createFlow(RoomDatabase roomDatabase, boolean z, String[] strArr, Callable<R> callable) {
|
|
return Companion.createFlow(roomDatabase, z, strArr, callable);
|
|
}
|
|
|
|
public static final <R> Object execute(RoomDatabase roomDatabase, boolean z, CancellationSignal cancellationSignal, Callable<R> callable, Continuation continuation) {
|
|
return Companion.execute(roomDatabase, z, cancellationSignal, callable, continuation);
|
|
}
|
|
|
|
public static final <R> Object execute(RoomDatabase roomDatabase, boolean z, Callable<R> callable, Continuation continuation) {
|
|
return Companion.execute(roomDatabase, z, callable, continuation);
|
|
}
|
|
|
|
private CoroutinesRoom() {
|
|
}
|
|
|
|
@SourceDebugExtension({"SMAP\nCoroutinesRoom.kt\nKotlin\n*S Kotlin\n*F\n+ 1 CoroutinesRoom.kt\nandroidx/room/CoroutinesRoom$Companion\n+ 2 CancellableContinuation.kt\nkotlinx/coroutines/CancellableContinuationKt\n*L\n1#1,162:1\n314#2,11:163\n*S KotlinDebug\n*F\n+ 1 CoroutinesRoom.kt\nandroidx/room/CoroutinesRoom$Companion\n*L\n84#1:163,11\n*E\n"})
|
|
public static final class Companion {
|
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
|
|
private Companion() {
|
|
}
|
|
|
|
public final <R> Object execute(RoomDatabase roomDatabase, boolean z, Callable<R> callable, Continuation continuation) {
|
|
ContinuationInterceptor transactionDispatcher;
|
|
if (roomDatabase.isOpenInternal() && roomDatabase.inTransaction()) {
|
|
return callable.call();
|
|
}
|
|
TransactionElement transactionElement = (TransactionElement) continuation.getContext().get(TransactionElement.Key);
|
|
if (transactionElement == null || (transactionDispatcher = transactionElement.getTransactionDispatcher$room_ktx_release()) == null) {
|
|
transactionDispatcher = z ? CoroutinesRoomKt.getTransactionDispatcher(roomDatabase) : CoroutinesRoomKt.getQueryDispatcher(roomDatabase);
|
|
}
|
|
return BuildersKt.withContext(transactionDispatcher, new CoroutinesRoom$Companion$execute$2(callable, null), continuation);
|
|
}
|
|
|
|
public final <R> Object execute(RoomDatabase roomDatabase, boolean z, final CancellationSignal cancellationSignal, Callable<R> callable, Continuation continuation) {
|
|
ContinuationInterceptor transactionDispatcher;
|
|
Continuation intercepted;
|
|
final Job launch$default;
|
|
Object coroutine_suspended;
|
|
if (roomDatabase.isOpenInternal() && roomDatabase.inTransaction()) {
|
|
return callable.call();
|
|
}
|
|
TransactionElement transactionElement = (TransactionElement) continuation.getContext().get(TransactionElement.Key);
|
|
if (transactionElement == null || (transactionDispatcher = transactionElement.getTransactionDispatcher$room_ktx_release()) == null) {
|
|
transactionDispatcher = z ? CoroutinesRoomKt.getTransactionDispatcher(roomDatabase) : CoroutinesRoomKt.getQueryDispatcher(roomDatabase);
|
|
}
|
|
ContinuationInterceptor continuationInterceptor = transactionDispatcher;
|
|
intercepted = IntrinsicsKt__IntrinsicsJvmKt.intercepted(continuation);
|
|
CancellableContinuationImpl cancellableContinuationImpl = new CancellableContinuationImpl(intercepted, 1);
|
|
cancellableContinuationImpl.initCancellability();
|
|
launch$default = BuildersKt__Builders_commonKt.launch$default(GlobalScope.INSTANCE, continuationInterceptor, null, new CoroutinesRoom$Companion$execute$4$job$1(callable, cancellableContinuationImpl, null), 2, null);
|
|
cancellableContinuationImpl.invokeOnCancellation(new Function1() { // from class: androidx.room.CoroutinesRoom$Companion$execute$4$1
|
|
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
|
|
{
|
|
super(1);
|
|
}
|
|
|
|
@Override // kotlin.jvm.functions.Function1
|
|
public /* bridge */ /* synthetic */ Object invoke(Object obj) {
|
|
invoke((Throwable) obj);
|
|
return Unit.INSTANCE;
|
|
}
|
|
|
|
public final void invoke(Throwable th) {
|
|
CancellationSignal cancellationSignal2 = cancellationSignal;
|
|
if (cancellationSignal2 != null) {
|
|
SupportSQLiteCompat.Api16Impl.cancel(cancellationSignal2);
|
|
}
|
|
Job.DefaultImpls.cancel$default(launch$default, null, 1, null);
|
|
}
|
|
});
|
|
Object result = cancellableContinuationImpl.getResult();
|
|
coroutine_suspended = IntrinsicsKt__IntrinsicsKt.getCOROUTINE_SUSPENDED();
|
|
if (result == coroutine_suspended) {
|
|
DebugProbesKt.probeCoroutineSuspended(continuation);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public final <R> Flow createFlow(RoomDatabase roomDatabase, boolean z, String[] strArr, Callable<R> callable) {
|
|
return FlowKt.flow(new CoroutinesRoom$Companion$createFlow$1(z, roomDatabase, strArr, callable, null));
|
|
}
|
|
}
|
|
}
|