Enqueue thread update job after transaction completes.

This commit is contained in:
Clark
2023-05-24 10:30:47 -04:00
committed by Nicholas
parent 61eb397d2b
commit 90f6890180

View File

@@ -38,7 +38,9 @@ public final class ThreadUpdateJob extends BaseJob {
}
public static void enqueue(long threadId) {
ApplicationDependencies.getJobManager().add(new ThreadUpdateJob(threadId));
SignalDatabase.runPostSuccessfulTransaction(KEY + threadId, () -> {
ApplicationDependencies.getJobManager().add(new ThreadUpdateJob(threadId));
});
}
@Override
@@ -54,9 +56,7 @@ public final class ThreadUpdateJob extends BaseJob {
@Override
protected void onRun() throws Exception {
SignalDatabase.threads().update(threadId, true);
if (ApplicationDependencies.getIncomingMessageObserver().getDecryptionDrained()) {
ThreadUtil.sleep(DEBOUNCE_INTERVAL);
} else {
if (!ApplicationDependencies.getIncomingMessageObserver().getDecryptionDrained()) {
ThreadUtil.sleep(DEBOUNCE_INTERVAL_WITH_BACKLOG);
}
}