mirror of
https://github.com/oxen-io/session-android.git
synced 2025-06-09 04:18:34 +00:00
Prevent waiting for old queues in our retrieval strategies.
This commit is contained in:
parent
b9f11dafff
commit
6b2e000e61
@ -37,14 +37,6 @@ public class JobTracker {
|
||||
*/
|
||||
synchronized void addListener(@NonNull JobFilter filter, @NonNull JobListener listener) {
|
||||
jobListeners.add(new ListenerInfo(filter, listener));
|
||||
|
||||
Stream.of(jobInfos.values())
|
||||
.filter(info -> info.getJobState() != null)
|
||||
.filter(info -> filter.matches(info.getJob()))
|
||||
.forEach(state-> {
|
||||
//noinspection ConstantConditions We already filter for nulls above
|
||||
listenerExecutor.execute(() -> listener.onStateChanged(state.getJob(), state.getJobState()));
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -34,6 +34,8 @@ public class RestStrategy extends MessageRetrievalStrategy {
|
||||
QueueFindingJobListener queueListener = new QueueFindingJobListener();
|
||||
|
||||
try (IncomingMessageProcessor.Processor processor = ApplicationDependencies.getIncomingMessageProcessor().acquire()) {
|
||||
jobManager.addListener(job -> job.getParameters().getQueue() != null && job.getParameters().getQueue().startsWith(PushProcessMessageJob.QUEUE_PREFIX), queueListener);
|
||||
|
||||
int jobCount = enqueuePushDecryptJobs(processor, startTime, timeout);
|
||||
|
||||
if (jobCount == 0) {
|
||||
@ -43,8 +45,6 @@ public class RestStrategy extends MessageRetrievalStrategy {
|
||||
Log.d(TAG, jobCount + " PushDecryptMessageJob(s) were enqueued.");
|
||||
}
|
||||
|
||||
jobManager.addListener(job -> job.getParameters().getQueue() != null && job.getParameters().getQueue().startsWith(PushProcessMessageJob.QUEUE_PREFIX), queueListener);
|
||||
|
||||
long timeRemainingMs = blockUntilQueueDrained(PushDecryptMessageJob.QUEUE, TimeUnit.SECONDS.toMillis(10));
|
||||
Set<String> processQueues = queueListener.getQueues();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user