History log of /frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
97c46766591189e7ce62706ce9614ebce99a222d 07-Jun-2018 Sumir Kataria <sumir@google.com> Update and correct docs.

Change-Id: I7b6109fabafaab4806df4be9d9378d1d74e8b728
Fixes: 109758949
Fixes: 109827628
Test: genDocs
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
3db1e38129d3326eecb27b49f11144fb58cb9765 02-Jun-2018 Sumir Kataria <sumir@google.com> Correct documentation for Worker#getNetwork.

Test: N/A
Change-Id: I1f3828ade2924bba0ef73277a2804dae12f13817
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
b24ef38a0b526b524e3e6a7849f62f934a6ad58c 01-Jun-2018 Sumir Kataria <sumir@google.com> Expose current run attempt count in Worker.

Developers can use this to implement their own
max retry count behavior. (We don't want to
provide that as a WorkRequest.Builder API
because it's not clear what state work that
has exceeded its max retry count should be in.
Should it be CANCELLED? FAILED? Something
new? It's better to let the developer deal
with this themselves.)

Change-Id: Ifc22207f71a8880fb725c0cec80281bceff1af44
Fixes: 79716516
Test: Added and ran tests
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
11a7c26af63674a21787696e509e9a43d0bd7acf 01-Jun-2018 Sumir Kataria <sumir@google.com> Rename Worker#WorkerResult -> Worker#Result.

Change-Id: Icbe7b588a933412b277e8ee8902b86254d701a61
Fixes: 80217775
Test: Ran tests.
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
eda66d6e6b83e6f68717be95ec10e7ad8f070a83 01-Jun-2018 Sumir Kataria <sumir@google.com> Add Network to Worker/RuntimeExtras.

Change-Id: I7c32502700444a9f2109b70791db2192836ba539
Fixes: 74404811
Test: Added and ran tests.
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
5d373d376edddb57cd822dd06ed54f97ef949586 31-May-2018 Sumir Kataria <sumir@google.com> Breaking change: Tell Worker if it's been cancelled.

Currently, Worker#onStopped doesn't know if it's been
cancelled or merely pre-empted by the system. b/79632247
points out some reasons why an explicit signal for
cancellation may be useful. #onStopped now gets a
boolean argument indicating if the Worker has been
cancelled and will never run again. A new method,
Worker#isCancelled, is also provided.

Change-Id: I19424fe718c95e2fd374f40b0afc8a79194c6100
Fixes: 79632247
Test: Added and ran tests.
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
d837e9b3067bf06e3331fcfaf6b6b217609c289c 25-May-2018 Sumir Kataria <sumir@google.com> Add better docs for Worker.

Disable lint for a few fields that don't need it.

Fixes: 80230748,80217496
Test: N/A, but ran tests anyway
Change-Id: Iec63637ef07830df1925884de99b849462bf4ca5
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
dd5f33cd6b98eba208ac7c69d3d6314d3115e2d2 24-May-2018 Sumir Kataria <sumir@google.com> Breaking change: Worker.getId now returns a UUID.

This was an artifact of the old API that never got
fixed.

Also added Javadoc.

Test: Reran tests.
Change-Id: I9173ab1e58c5262f4767a426f53f388faadaf1a4
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
bf4f4f72fd27f110b95cc9867fb5dc695d2689b1 22-May-2018 Sumir Kataria <sumir@google.com> Add Worker interruption-related methods.

- Worker#isStopped indicates if the Worker is
currently considered interrupted and should stop
its processing.
- Worker#onStopped is called upon interruption
for lightweight cleanup operations.

Change-Id: Idb656029f6594fe6b9953571113c972f39e43cd6
Fixes: 79632247
Test: Added and a ran testInterruption_isMarkedOnRunningWorker
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
7b5c560e4098585f73564951621060de708e441f 22-May-2018 Sumir Kataria <sumir@google.com> Expose tags in Worker.

Plumb tags all the way through. Change the signature
of internalInit so it takes one data-holding parameter
(Extras, which now contains input Data, tags, and
RuntimeExtras). This way, we don't need to change the
internalInit signature. This means we won't need
dagger updates.

Change-Id: I4deff0dda7518d8c253b899922eee647cccef756
Fixes: 79631815
Test: Added and ran tests.
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
d0d61c5aa317685f06802a202a2f46c71e1da962 20-Apr-2018 Rahul Ravikumar <rahulrav@google.com> Rename Worker#getAppContext to Worker#getApplicationContext()

Test: Existing unit tests pass.
Change-Id: I17e4a8596d43c942c37485833a8eb007587582a4
Fixes: b/78288767
(cherry picked from commit f80b700a707b5c29592dc06b3c4ae70f57e8a456)
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
7031a0fbe12b8159ab2dc6d9c50be5b3f38477fa 19-Apr-2018 Rahul Ravikumar <rahulrav@google.com> Rename BaseWorkRequest to WorkRequest, and WorkRequest to OneTimeWorkRequest.

- API council feedback.


Test: All unit tests continue to pass.
Fixes: b/78287721
Change-Id: Ifc00fc74cf9c42aeb44c3f4cb3244b5d445b8d0d
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
b0a0d7b4910f8733c04bc9dd98ec05da7247bdce 17-Apr-2018 Sumir Kataria <sumir@google.com> Add WorkerWrapper interruption; remove usage of Futures.

This is part 1 of removing ExecutorService and using
Executor instead. Here we add an explicit interrupt()
method to WorkerWrapper and check it when deciding if
the work finished successfully.

Also cleaned up a broken state where ALL non-cancelled
states could lead to handleResult being called.

Removed blocking cancellation in WorkManagerImplTests
due to thread contention issues because of synchronous
execution rules.

Removed Worker.isInterrupted. Need to come up with a
suitable alternative.

Removed Processor.stopWork's second argument (may
interrupt thread) because it's not relevant anymore.

Test: Added and ran tests.
Change-Id: I28de5081e8d30c3d9147b1d74008ab931963fa81
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
b9701e2752b53221501cfaeb247256f1ae12baec 17-Apr-2018 Sumir Kataria <sumir@google.com> Add nullability annotations to Worker.

Set output to Data.EMPTY by default and
made it mandatory to be @NonNull to match
input.

Test: Ran tests.
Change-Id: Iacd38c755200cf018a212c2616861454418e270d
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
8b3284fa4a62568df91f706b0b2334284794008f 13-Apr-2018 Sumir Kataria <sumir@google.com> Change *Work -> *WorkRequest.

Test: Ran tests.
Change-Id: Ice89bfb633105ab2b60e2d5a83cdf11e92595553
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
64e6bd86c786f1cb1b0c3dbc2b5307cca5c0d1f6 29-Mar-2018 Sumir Kataria <sumir@google.com> Rename Arguments to Data.

- Rename setOutput to setOutputData
- Rename BaseWork.Builder.withArguments to withInputData.

Change-Id: Idf490663c9639b9a90d0327d7f164534b0a0b2a4
Fixes: 76438322
Test: Updated and ran tests.
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
681a8d809fe41189c9d590d33b986b98170e4963 21-Mar-2018 Sumir Kataria <sumir@google.com> Create RuntimeExtras. Put content uri info in it.

RuntimeExtras contains information that is not cacheable and
is only available when we decide to run a job. In this case,
the class contains triggered content URI information; in the
future, the triggered Network info will also be available
here.

RuntimeExtras is piped all the way to the Worker.

Change-Id: I24b73da267d16f661a138b4aa652f34bdb9cedf5
Fixes: 71909029
Test: Added and ran tests.
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
707219fe57da2c3b270035c109ab865f01287ae9 14-Mar-2018 Rahul Ravikumar <rahulrav@google.com> Rename methods to be more consistent.
Test: Unit tests pass

Change-Id: If3679adb1d3c47a0c961a40787d9049d7b719c88
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
c7824d12a036d1f9298c1b1355fb6a9ffa92d53d 13-Mar-2018 Rahul Ravikumar <rahulrav@google.com> Add -keep rules for Workers and InputMergers
- Also used the keep rules defined in the integration tests app.

Test: Ran proguard on the integration test app, and verified that
Workers and InputMergers are unobfuscated.
Fixes: b/74531761

Change-Id: I21ab40ef700f1e3ee0dd6e25c8f532170880c6d6
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.java
515ed7401d62081fb2cdd34fc8df325ed8943719 20-Feb-2018 Sumir Kataria <sumir@google.com> Change getInstance() to getInstance(Context).

This removes the ContentProvider-initialized singleton in the
manifest. In general, we are prioritizing faster startup over
the marginal readability improvement. There was some concern
in previous Googler studies about "which context", "will it
be cached and scoped to this lifecycle", etc. We believe that
the documentation is sufficiently clear on this. In addition,
this follows a common pattern in Android apps.

Test: Updated and ran tests.

Change-Id: I5f24724934ed1e16bddb0d9906326ad2e54e398d
/frameworks/support/work/workmanager/src/main/java/androidx/work/Worker.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/Worker.java