Files
rr3-apk/decompiled/sources/androidx/work/impl/CleanupCallback.java
Daniel Elliott f9d20bb3fc Add decompiled APK source code (JADX)
- 28,932 files
- Full Java source code
- Smali files
- Resources

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 14:52:23 -08:00

42 lines
1.3 KiB
Java

package androidx.work.impl;
import androidx.room.RoomDatabase;
import androidx.sqlite.db.SupportSQLiteDatabase;
import androidx.work.Clock;
import kotlin.jvm.internal.Intrinsics;
/* loaded from: classes.dex */
public final class CleanupCallback extends RoomDatabase.Callback {
private final Clock clock;
public final Clock getClock() {
return this.clock;
}
public CleanupCallback(Clock clock) {
Intrinsics.checkNotNullParameter(clock, "clock");
this.clock = clock;
}
private final String getPruneSQL() {
return "DELETE FROM workspec WHERE state IN (2, 3, 5) AND (last_enqueue_time + minimum_retention_duration) < " + getPruneDate() + " AND (SELECT COUNT(*)=0 FROM dependency WHERE prerequisite_id=id AND work_spec_id NOT IN (SELECT id FROM workspec WHERE state IN (2, 3, 5)))";
}
private final long getPruneDate() {
return this.clock.currentTimeMillis() - WorkDatabaseKt.PRUNE_THRESHOLD_MILLIS;
}
@Override // androidx.room.RoomDatabase.Callback
public void onOpen(SupportSQLiteDatabase db) {
Intrinsics.checkNotNullParameter(db, "db");
super.onOpen(db);
db.beginTransaction();
try {
db.execSQL(getPruneSQL());
db.setTransactionSuccessful();
} finally {
db.endTransaction();
}
}
}