From 34a35e2d7728b44522a2daa42efbded82982212a Mon Sep 17 00:00:00 2001 From: nielsandriesse Date: Wed, 16 Sep 2020 14:38:40 +1000 Subject: [PATCH] Debug background polling --- src/org/thoughtcrime/securesms/ApplicationContext.java | 2 ++ src/org/thoughtcrime/securesms/loki/api/BackgroundPollJob.kt | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/src/org/thoughtcrime/securesms/ApplicationContext.java b/src/org/thoughtcrime/securesms/ApplicationContext.java index 73a2304bff..2961ddbd8a 100644 --- a/src/org/thoughtcrime/securesms/ApplicationContext.java +++ b/src/org/thoughtcrime/securesms/ApplicationContext.java @@ -254,6 +254,7 @@ public class ApplicationContext extends MultiDexApplication implements Dependenc messageNotifier.setVisibleThread(-1); // Loki if (poller != null) { poller.stopIfNeeded(); } + if (closedGroupPoller != null) { closedGroupPoller.stopIfNeeded(); } if (publicChatManager != null) { publicChatManager.stopPollers(); } } @@ -534,6 +535,7 @@ public class ApplicationContext extends MultiDexApplication implements Dependenc public void stopPolling() { if (poller != null) { poller.stopIfNeeded(); } if (closedGroupPoller != null) { closedGroupPoller.stopIfNeeded(); } + if (publicChatManager != null) { publicChatManager.stopPollers(); } } private void resubmitProfilePictureIfNeeded() { diff --git a/src/org/thoughtcrime/securesms/loki/api/BackgroundPollJob.kt b/src/org/thoughtcrime/securesms/loki/api/BackgroundPollJob.kt index d3781c6173..1cf97b3c64 100644 --- a/src/org/thoughtcrime/securesms/loki/api/BackgroundPollJob.kt +++ b/src/org/thoughtcrime/securesms/loki/api/BackgroundPollJob.kt @@ -1,7 +1,9 @@ package org.thoughtcrime.securesms.loki.api import android.content.Context +import kotlinx.coroutines.awaitAll import nl.komponents.kovenant.Promise +import nl.komponents.kovenant.all import nl.komponents.kovenant.functional.map import org.thoughtcrime.securesms.ApplicationContext import org.thoughtcrime.securesms.database.DatabaseFactory @@ -45,6 +47,7 @@ class BackgroundPollJob private constructor(parameters: Parameters) : BaseJob(pa public override fun onRun() { try { + Log.d("Loki", "Performing background poll.") val userPublicKey = TextSecurePreferences.getLocalNumber(context) val promises = mutableListOf>() val promise = SnodeAPI.shared.getMessages(userPublicKey).map { envelopes -> @@ -60,6 +63,7 @@ class BackgroundPollJob private constructor(parameters: Parameters) : BaseJob(pa poller.stop() promises.add(poller.pollForNewMessages()) } + all(promises).get() } catch (exception: Exception) { Log.d("Loki", "Background poll failed due to error: $exception.") }