1// Signature format: 4.0
2package androidx.work {
3
4  public final class ArrayCreatingInputMerger extends androidx.work.InputMerger {
5    ctor public ArrayCreatingInputMerger();
6    method public androidx.work.Data merge(java.util.List<androidx.work.Data!>);
7  }
8
9  public enum BackoffPolicy {
10    enum_constant public static final androidx.work.BackoffPolicy EXPONENTIAL;
11    enum_constant public static final androidx.work.BackoffPolicy LINEAR;
12  }
13
14  public final class Configuration {
15    method public java.util.concurrent.Executor getExecutor();
16    method public int getMaxJobSchedulerId();
17    method public int getMinJobSchedulerId();
18    method public java.util.concurrent.Executor getTaskExecutor();
19    method public androidx.work.WorkerFactory getWorkerFactory();
20    field public static final int MIN_SCHEDULER_LIMIT = 20; // 0x14
21  }
22
23  public static final class Configuration.Builder {
24    ctor public Configuration.Builder();
25    method public androidx.work.Configuration build();
26    method public androidx.work.Configuration.Builder setExecutor(java.util.concurrent.Executor);
27    method public androidx.work.Configuration.Builder setJobSchedulerJobIdRange(int, int);
28    method public androidx.work.Configuration.Builder setMaxSchedulerLimit(int);
29    method public androidx.work.Configuration.Builder setMinimumLoggingLevel(int);
30    method public androidx.work.Configuration.Builder setTaskExecutor(java.util.concurrent.Executor);
31    method public androidx.work.Configuration.Builder setWorkerFactory(androidx.work.WorkerFactory);
32  }
33
34  public static interface Configuration.Provider {
35    method public androidx.work.Configuration getWorkManagerConfiguration();
36  }
37
38  public final class Constraints {
39    ctor public Constraints(androidx.work.Constraints);
40    method public androidx.work.NetworkType getRequiredNetworkType();
41    method public boolean requiresBatteryNotLow();
42    method public boolean requiresCharging();
43    method @RequiresApi(23) public boolean requiresDeviceIdle();
44    method public boolean requiresStorageNotLow();
45    field public static final androidx.work.Constraints! NONE;
46  }
47
48  public static final class Constraints.Builder {
49    ctor public Constraints.Builder();
50    method @RequiresApi(24) public androidx.work.Constraints.Builder addContentUriTrigger(android.net.Uri, boolean);
51    method public androidx.work.Constraints build();
52    method public androidx.work.Constraints.Builder setRequiredNetworkType(androidx.work.NetworkType);
53    method public androidx.work.Constraints.Builder setRequiresBatteryNotLow(boolean);
54    method public androidx.work.Constraints.Builder setRequiresCharging(boolean);
55    method @RequiresApi(23) public androidx.work.Constraints.Builder setRequiresDeviceIdle(boolean);
56    method public androidx.work.Constraints.Builder setRequiresStorageNotLow(boolean);
57    method @RequiresApi(26) public androidx.work.Constraints.Builder setTriggerContentMaxDelay(java.time.Duration!);
58    method @RequiresApi(24) public androidx.work.Constraints.Builder setTriggerContentMaxDelay(long, java.util.concurrent.TimeUnit);
59    method @RequiresApi(26) public androidx.work.Constraints.Builder setTriggerContentUpdateDelay(java.time.Duration!);
60    method @RequiresApi(24) public androidx.work.Constraints.Builder setTriggerContentUpdateDelay(long, java.util.concurrent.TimeUnit);
61  }
62
63  public final class Data {
64    ctor public Data(androidx.work.Data);
65    method public boolean getBoolean(String, boolean);
66    method public boolean[]? getBooleanArray(String);
67    method public byte getByte(String, byte);
68    method public byte[]? getByteArray(String);
69    method public double getDouble(String, double);
70    method public double[]? getDoubleArray(String);
71    method public float getFloat(String, float);
72    method public float[]? getFloatArray(String);
73    method public int getInt(String, int);
74    method public int[]? getIntArray(String);
75    method public java.util.Map<java.lang.String!,java.lang.Object!> getKeyValueMap();
76    method public long getLong(String, long);
77    method public long[]? getLongArray(String);
78    method public String? getString(String);
79    method public String![]? getStringArray(String);
80    field public static final androidx.work.Data! EMPTY;
81    field public static final int MAX_DATA_BYTES = 10240; // 0x2800
82  }
83
84  public static final class Data.Builder {
85    ctor public Data.Builder();
86    method public androidx.work.Data build();
87    method public androidx.work.Data.Builder putAll(androidx.work.Data);
88    method public androidx.work.Data.Builder putAll(java.util.Map<java.lang.String!,java.lang.Object!>);
89    method public androidx.work.Data.Builder putBoolean(String, boolean);
90    method public androidx.work.Data.Builder putBooleanArray(String, boolean[]);
91    method public androidx.work.Data.Builder putByte(String, byte);
92    method public androidx.work.Data.Builder putByteArray(String, byte[]);
93    method public androidx.work.Data.Builder putDouble(String, double);
94    method public androidx.work.Data.Builder putDoubleArray(String, double[]);
95    method public androidx.work.Data.Builder putFloat(String, float);
96    method public androidx.work.Data.Builder putFloatArray(String, float[]);
97    method public androidx.work.Data.Builder putInt(String, int);
98    method public androidx.work.Data.Builder putIntArray(String, int[]);
99    method public androidx.work.Data.Builder putLong(String, long);
100    method public androidx.work.Data.Builder putLongArray(String, long[]);
101    method public androidx.work.Data.Builder putString(String, String?);
102    method public androidx.work.Data.Builder putStringArray(String, String![]);
103  }
104
105  public class DelegatingWorkerFactory extends androidx.work.WorkerFactory {
106    ctor public DelegatingWorkerFactory();
107    method public final void addFactory(androidx.work.WorkerFactory);
108    method public final androidx.work.ListenableWorker? createWorker(android.content.Context, String, androidx.work.WorkerParameters);
109  }
110
111  public enum ExistingPeriodicWorkPolicy {
112    enum_constant public static final androidx.work.ExistingPeriodicWorkPolicy KEEP;
113    enum_constant public static final androidx.work.ExistingPeriodicWorkPolicy REPLACE;
114  }
115
116  public enum ExistingWorkPolicy {
117    enum_constant public static final androidx.work.ExistingWorkPolicy APPEND;
118    enum_constant public static final androidx.work.ExistingWorkPolicy KEEP;
119    enum_constant public static final androidx.work.ExistingWorkPolicy REPLACE;
120  }
121
122  public abstract class InputMerger {
123    ctor public InputMerger();
124    method public abstract androidx.work.Data merge(java.util.List<androidx.work.Data!>);
125  }
126
127  public abstract class ListenableWorker {
128    ctor @Keep public ListenableWorker(android.content.Context, androidx.work.WorkerParameters);
129    method public final android.content.Context getApplicationContext();
130    method public final java.util.UUID getId();
131    method public final androidx.work.Data getInputData();
132    method @RequiresApi(28) public final android.net.Network? getNetwork();
133    method @IntRange(from=0) public final int getRunAttemptCount();
134    method public final java.util.Set<java.lang.String!> getTags();
135    method @RequiresApi(24) public final java.util.List<java.lang.String!> getTriggeredContentAuthorities();
136    method @RequiresApi(24) public final java.util.List<android.net.Uri!> getTriggeredContentUris();
137    method public final boolean isStopped();
138    method public void onStopped();
139    method @MainThread public abstract com.google.common.util.concurrent.ListenableFuture<androidx.work.ListenableWorker.Result!> startWork();
140  }
141
142  public abstract static class ListenableWorker.Result {
143    method public static androidx.work.ListenableWorker.Result failure();
144    method public static androidx.work.ListenableWorker.Result failure(androidx.work.Data);
145    method public static androidx.work.ListenableWorker.Result retry();
146    method public static androidx.work.ListenableWorker.Result success();
147    method public static androidx.work.ListenableWorker.Result success(androidx.work.Data);
148  }
149
150  public enum NetworkType {
151    enum_constant public static final androidx.work.NetworkType CONNECTED;
152    enum_constant public static final androidx.work.NetworkType METERED;
153    enum_constant public static final androidx.work.NetworkType NOT_REQUIRED;
154    enum_constant public static final androidx.work.NetworkType NOT_ROAMING;
155    enum_constant public static final androidx.work.NetworkType UNMETERED;
156  }
157
158  public final class OneTimeWorkRequest extends androidx.work.WorkRequest {
159    method public static androidx.work.OneTimeWorkRequest from(Class<? extends androidx.work.ListenableWorker>);
160    method public static java.util.List<androidx.work.OneTimeWorkRequest!> from(java.util.List<java.lang.Class<? extends androidx.work.ListenableWorker>!>);
161  }
162
163  public static final class OneTimeWorkRequest.Builder extends androidx.work.WorkRequest.Builder<androidx.work.OneTimeWorkRequest.Builder,androidx.work.OneTimeWorkRequest> {
164    ctor public OneTimeWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker>);
165    method public androidx.work.OneTimeWorkRequest.Builder setInputMerger(Class<? extends androidx.work.InputMerger>);
166  }
167
168  public interface Operation {
169    method public com.google.common.util.concurrent.ListenableFuture<androidx.work.Operation.State.SUCCESS!> getResult();
170    method public androidx.lifecycle.LiveData<androidx.work.Operation.State!> getState();
171  }
172
173  public abstract static class Operation.State {
174  }
175
176  public static final class Operation.State.FAILURE extends androidx.work.Operation.State {
177    ctor public Operation.State.FAILURE(Throwable);
178    method public Throwable getThrowable();
179  }
180
181  public static final class Operation.State.IN_PROGRESS extends androidx.work.Operation.State {
182  }
183
184  public static final class Operation.State.SUCCESS extends androidx.work.Operation.State {
185  }
186
187  public final class OverwritingInputMerger extends androidx.work.InputMerger {
188    ctor public OverwritingInputMerger();
189    method public androidx.work.Data merge(java.util.List<androidx.work.Data!>);
190  }
191
192  public final class PeriodicWorkRequest extends androidx.work.WorkRequest {
193    field public static final long MIN_PERIODIC_FLEX_MILLIS = 300000L; // 0x493e0L
194    field public static final long MIN_PERIODIC_INTERVAL_MILLIS = 900000L; // 0xdbba0L
195  }
196
197  public static final class PeriodicWorkRequest.Builder extends androidx.work.WorkRequest.Builder<androidx.work.PeriodicWorkRequest.Builder,androidx.work.PeriodicWorkRequest> {
198    ctor @RequiresApi(26) public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker>, java.time.Duration);
199    ctor @RequiresApi(26) public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker>, java.time.Duration, java.time.Duration);
200    ctor public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker>, long, java.util.concurrent.TimeUnit);
201    ctor public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker>, long, java.util.concurrent.TimeUnit, long, java.util.concurrent.TimeUnit);
202  }
203
204  public abstract class WorkContinuation {
205    ctor public WorkContinuation();
206    method public static androidx.work.WorkContinuation combine(java.util.List<androidx.work.WorkContinuation!>);
207    method public abstract androidx.work.Operation enqueue();
208    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfos();
209    method public abstract androidx.lifecycle.LiveData<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosLiveData();
210    method public final androidx.work.WorkContinuation then(androidx.work.OneTimeWorkRequest);
211    method public abstract androidx.work.WorkContinuation then(java.util.List<androidx.work.OneTimeWorkRequest!>);
212  }
213
214  public final class WorkInfo {
215    method public java.util.UUID getId();
216    method public androidx.work.Data getOutputData();
217    method @IntRange(from=0) public int getRunAttemptCount();
218    method public androidx.work.WorkInfo.State getState();
219    method public java.util.Set<java.lang.String!> getTags();
220  }
221
222  public enum WorkInfo.State {
223    method public boolean isFinished();
224    enum_constant public static final androidx.work.WorkInfo.State BLOCKED;
225    enum_constant public static final androidx.work.WorkInfo.State CANCELLED;
226    enum_constant public static final androidx.work.WorkInfo.State ENQUEUED;
227    enum_constant public static final androidx.work.WorkInfo.State FAILED;
228    enum_constant public static final androidx.work.WorkInfo.State RUNNING;
229    enum_constant public static final androidx.work.WorkInfo.State SUCCEEDED;
230  }
231
232  public abstract class WorkManager {
233    method public final androidx.work.WorkContinuation beginUniqueWork(String, androidx.work.ExistingWorkPolicy, androidx.work.OneTimeWorkRequest);
234    method public abstract androidx.work.WorkContinuation beginUniqueWork(String, androidx.work.ExistingWorkPolicy, java.util.List<androidx.work.OneTimeWorkRequest!>);
235    method public final androidx.work.WorkContinuation beginWith(androidx.work.OneTimeWorkRequest);
236    method public abstract androidx.work.WorkContinuation beginWith(java.util.List<androidx.work.OneTimeWorkRequest!>);
237    method public abstract androidx.work.Operation cancelAllWork();
238    method public abstract androidx.work.Operation cancelAllWorkByTag(String);
239    method public abstract androidx.work.Operation cancelUniqueWork(String);
240    method public abstract androidx.work.Operation cancelWorkById(java.util.UUID);
241    method public final androidx.work.Operation enqueue(androidx.work.WorkRequest);
242    method public abstract androidx.work.Operation enqueue(java.util.List<? extends androidx.work.WorkRequest>);
243    method public abstract androidx.work.Operation enqueueUniquePeriodicWork(String, androidx.work.ExistingPeriodicWorkPolicy, androidx.work.PeriodicWorkRequest);
244    method public androidx.work.Operation enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, androidx.work.OneTimeWorkRequest);
245    method public abstract androidx.work.Operation enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, java.util.List<androidx.work.OneTimeWorkRequest!>);
246    method @Deprecated public static androidx.work.WorkManager getInstance();
247    method public static androidx.work.WorkManager getInstance(android.content.Context);
248    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Long!> getLastCancelAllTimeMillis();
249    method public abstract androidx.lifecycle.LiveData<java.lang.Long!> getLastCancelAllTimeMillisLiveData();
250    method public abstract com.google.common.util.concurrent.ListenableFuture<androidx.work.WorkInfo!> getWorkInfoById(java.util.UUID);
251    method public abstract androidx.lifecycle.LiveData<androidx.work.WorkInfo!> getWorkInfoByIdLiveData(java.util.UUID);
252    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosByTag(String);
253    method public abstract androidx.lifecycle.LiveData<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosByTagLiveData(String);
254    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosForUniqueWork(String);
255    method public abstract androidx.lifecycle.LiveData<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosForUniqueWorkLiveData(String);
256    method public static void initialize(android.content.Context, androidx.work.Configuration);
257    method public abstract androidx.work.Operation pruneWork();
258  }
259
260  public abstract class WorkRequest {
261    method public java.util.UUID getId();
262    field public static final long DEFAULT_BACKOFF_DELAY_MILLIS = 30000L; // 0x7530L
263    field public static final long MAX_BACKOFF_MILLIS = 18000000L; // 0x112a880L
264    field public static final long MIN_BACKOFF_MILLIS = 10000L; // 0x2710L
265  }
266
267  public abstract static class WorkRequest.Builder<B extends androidx.work.WorkRequest.Builder, W extends androidx.work.WorkRequest> {
268    method public final B addTag(String);
269    method public final W build();
270    method @RequiresApi(26) public final B keepResultsForAtLeast(java.time.Duration);
271    method public final B keepResultsForAtLeast(long, java.util.concurrent.TimeUnit);
272    method @RequiresApi(26) public final B setBackoffCriteria(androidx.work.BackoffPolicy, java.time.Duration);
273    method public final B setBackoffCriteria(androidx.work.BackoffPolicy, long, java.util.concurrent.TimeUnit);
274    method public final B setConstraints(androidx.work.Constraints);
275    method @RequiresApi(26) public B setInitialDelay(java.time.Duration);
276    method public B setInitialDelay(long, java.util.concurrent.TimeUnit);
277    method public final B setInputData(androidx.work.Data);
278  }
279
280  public abstract class Worker extends androidx.work.ListenableWorker {
281    ctor @Keep public Worker(android.content.Context, androidx.work.WorkerParameters);
282    method @WorkerThread public abstract androidx.work.ListenableWorker.Result doWork();
283    method public final com.google.common.util.concurrent.ListenableFuture<androidx.work.ListenableWorker.Result!> startWork();
284  }
285
286  public abstract class WorkerFactory {
287    ctor public WorkerFactory();
288    method public abstract androidx.work.ListenableWorker? createWorker(android.content.Context, String, androidx.work.WorkerParameters);
289  }
290
291  public final class WorkerParameters {
292    method public java.util.UUID getId();
293    method public androidx.work.Data getInputData();
294    method @RequiresApi(28) public android.net.Network? getNetwork();
295    method @IntRange(from=0) public int getRunAttemptCount();
296    method public java.util.Set<java.lang.String!> getTags();
297    method @RequiresApi(24) public java.util.List<java.lang.String!> getTriggeredContentAuthorities();
298    method @RequiresApi(24) public java.util.List<android.net.Uri!> getTriggeredContentUris();
299  }
300
301}
302
303