Reduce time to start PushTextSendJob.

This commit is contained in:
Cody Henthorne
2021-08-02 17:46:56 -04:00
committed by Alex Hart
parent e374f3afe6
commit 2830132b24
5 changed files with 28 additions and 32 deletions

View File

@@ -16,8 +16,6 @@ import org.thoughtcrime.securesms.jobmanager.persistence.FullSpec;
import org.thoughtcrime.securesms.jobmanager.persistence.JobSpec;
import org.thoughtcrime.securesms.jobmanager.persistence.JobStorage;
import org.thoughtcrime.securesms.util.Debouncer;
import org.thoughtcrime.securesms.util.FeatureFlags;
import org.thoughtcrime.securesms.util.SetUtil;
import java.util.ArrayList;
import java.util.Collection;
@@ -28,7 +26,6 @@ import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
/**
* Manages the queue of jobs. This is the only class that should write to {@link JobStorage} to
@@ -98,9 +95,9 @@ class JobController {
}
insertJobChain(chain);
scheduleJobs(chain.get(0));
triggerOnSubmit(chain);
notifyAll();
scheduleJobs(chain.get(0));
}
@WorkerThread
@@ -421,11 +418,11 @@ class JobController {
@WorkerThread
private void scheduleJobs(@NonNull List<Job> jobs) {
for (Job job : jobs) {
List<Constraint> constraints = Stream.of(job.getParameters().getConstraintKeys())
.map(key -> new ConstraintSpec(job.getId(), key, job.getParameters().isMemoryOnly()))
.map(ConstraintSpec::getFactoryKey)
.map(constraintInstantiator::instantiate)
.toList();
List<String> constraintKeys = job.getParameters().getConstraintKeys();
List<Constraint> constraints = new ArrayList<>(constraintKeys.size());
for (String key : constraintKeys) {
constraints.add(constraintInstantiator.instantiate(key));
}
scheduler.schedule(0, constraints);
}