History log of /frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d554aebb8aa2aa48222b7b003273b06369d55a89 07-Jun-2018 Rahul Ravikumar <rahulrav@google.com> Migrating existing jobs to non-persistent jobs.

- Starting alpha03, we will no longer use JobScheduler to persist jobs.
- ForceStopRunnable now cancels all pending jobs, & reschedules eligible jobs.

Test: Added unit tests.

Change-Id: I672ad6f4ab8876834317f704234a76abc12b4ec7
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
494b77cd228de249649440c6210bbae1ddf33d76 05-Jun-2018 Rahul Ravikumar <rahulrav@google.com> Use SystemIdInfo to keep track of jobIds.

- Now we have stable ids for a given workSpecId.
- Cancelling a job also removes the relationship in the SystemIdInfo table.
- Don't ask JobScheduler to persist jobs. Instead use the RescheduleReceiver.

Test: Updated unit tests.
Integration Test: https://paste.googleplex.com/6602470222462976
Change-Id: I56bdcfbb560eb34b36bf060438ad70c606ce27e4
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
22a8129c2b3313100f851460f7da9e56ca98bd8f 25-May-2018 Rahul Ravikumar <rahulrav@google.com> Add the ability to ask WorkManager to use jobIds in a specified range.

- Configuration.Builder#setJobSchedulerJobIdRange(int minInclusive, int maxExclusive)
specifies the range of job ids to be used by JobScheduler.

Test: Added Unit tests for IdGenerator.
Change-Id: I30f4fc379e0a4df99deb66be52aa1b086828dcef
Fixes: b/79996760
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
697d6a4a3797bc71d0dd8685937a318e9934066b 17-Apr-2018 Rahul Ravikumar <rahulrav@google.com> Use the standard Android (android.util.Log) logger.

- Rename Logger to InternalLogger so we can start adding internal only
logs.
- Remove redundant logs in AlarmManager based implementation.

Test: Existing tests pass.
Change-Id: I44babc42dafbce0311f439ffaca6bf40fc058be0
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
9f91ee8c71606f36a51177cd0b5c3005834be1ff 21-Mar-2018 Rahul Ravikumar <rahulrav@google.com> Keep track of the number of scheduled workers.

- Scheduling of workers (via the Scheduler) should honor the
Scheduler#MAX_SCHEDULER_LIMIT.
- If we exceed the MAX_SCHEDULER_LIMIT, schedule_requested_at remains at -1.
- WorkerWrapper on succeeding or failing should try and schedule workers
which were pending execution previously.
- Cancelling of work via Scheduler#cancel() should try and schedule
work that was pending to be scheduled.
- Force stops should reset the scheduling bits, and try and
reschedule everything while honoring the MAX_SCHEDULER_LIMIT.

Test: Added unit tests, and existing tests pass.
Fixes: b/73730203

Change-Id: Icc30045ea058a9f27ca07297771d9062fca8beec
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
5ab54f5659eccf75e3b7deee75012e83380da48c 20-Mar-2018 Sumir Kataria <sumir@google.com> Move most *Work.Builder logic into BaseWork.Builder.

Further reduces method count!

Test: Ran tests
Change-Id: I58ef796035d12da6aaf8f32343757c09a6d1ea1a
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
b5728f4e1a4b3f4f1fabf033b1363ca6b1cffdef 19-Mar-2018 Sumir Kataria <sumir@google.com> Remove WorkSpec getters/setters.

The war on method count continues.

Test: Updated and ran tests.
Change-Id: Idaf80b08e415beab107c3f564d02b846a987008a
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
c68c7cd32c73a927f4bb73272a11d82ee7890add 21-Feb-2018 Sumir Kataria <sumir@google.com> Double-schedule jobs on API 23 to overcome bugs.

API 23 JobScheduler only kicked off jobs if there
were at least two jobs in the queue, even if the
job constraints were met. This behavior was
considered undesirable and later changed in
Marshmallow MR1. To match the new behavior, we
double-schedule jobs on API 23 and dedupe them
in SystemJobService as needed.

The JobScheduler behavior was fixed in ag/794033.

Change-Id: I5dc3049f65e5716258ab6de02b53d502e670f389
Fixes: 73383970
Test: Added and ran tests.
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java
188b6fb0e5da3723f28c23289b5b55086210e82c 16-Feb-2018 Sumir Kataria <sumir@google.com> Rename directories and references from background -> work.

Test: Ran tests.

Change-Id: Ibde6b2f3c7ecbc2490d4225418a1e24119e4a72a
/frameworks/support/work/workmanager/src/main/java/androidx/work/impl/background/systemjob/SystemJobScheduler.java