mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-22 14:48:25 +00:00
feat: add polling in background
This commit is contained in:
parent
fa528c47d5
commit
a2290a34fc
@ -9,8 +9,10 @@ import nl.komponents.kovenant.all
|
|||||||
import nl.komponents.kovenant.functional.map
|
import nl.komponents.kovenant.functional.map
|
||||||
import org.session.libsession.messaging.jobs.MessageReceiveJob
|
import org.session.libsession.messaging.jobs.MessageReceiveJob
|
||||||
import org.session.libsession.messaging.open_groups.OpenGroup
|
import org.session.libsession.messaging.open_groups.OpenGroup
|
||||||
|
import org.session.libsession.messaging.open_groups.OpenGroupV2
|
||||||
import org.session.libsession.messaging.sending_receiving.pollers.ClosedGroupPoller
|
import org.session.libsession.messaging.sending_receiving.pollers.ClosedGroupPoller
|
||||||
import org.session.libsession.messaging.sending_receiving.pollers.OpenGroupPoller
|
import org.session.libsession.messaging.sending_receiving.pollers.OpenGroupPoller
|
||||||
|
import org.session.libsession.messaging.sending_receiving.pollers.OpenGroupV2Poller
|
||||||
import org.session.libsession.snode.SnodeAPI
|
import org.session.libsession.snode.SnodeAPI
|
||||||
import org.session.libsession.utilities.TextSecurePreferences
|
import org.session.libsession.utilities.TextSecurePreferences
|
||||||
import org.session.libsignal.utilities.logging.Log
|
import org.session.libsignal.utilities.logging.Log
|
||||||
@ -90,6 +92,14 @@ class BackgroundPollWorker(val context: Context, params: WorkerParameters) : Wor
|
|||||||
promises.add(poller.pollForNewMessages())
|
promises.add(poller.pollForNewMessages())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val openGroupsV2 = DatabaseFactory.getLokiThreadDatabase(context).getAllV2OpenGroups().values.groupBy(OpenGroupV2::server)
|
||||||
|
|
||||||
|
openGroupsV2.values.map { groups ->
|
||||||
|
OpenGroupV2Poller(groups)
|
||||||
|
}.forEach { poller ->
|
||||||
|
promises.add(poller.compactPoll(true).map{ /*Unit*/ })
|
||||||
|
}
|
||||||
|
|
||||||
// Wait till all the promises get resolved
|
// Wait till all the promises get resolved
|
||||||
all(promises).get()
|
all(promises).get()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user