@@ -0,0 +1,2467 @@
+/*%0A * Copyright 2018 The Android Open Source Project%0A *%0A * Licensed under the Apache License, Version 2.0 (the %22License%22);%0A * you may not use this file except in compliance with the License.%0A * You may obtain a copy of the License at%0A *%0A *      http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0A%0A/**%0A * WorkManager is a library used to enqueue deferrable work that is guaranteed to execute sometime%0A * after its %7B@link androidx.work.Constraints%7D are met.  WorkManager allows observation of work%0A * status and the ability to create complex chains of work.%0A * %3Cp%3E%0A * WorkManager uses an underlying job dispatching service when available based on the following%0A * criteria:%0A * %3Cp%3E%3Cul%3E%0A * %3Cli%3EUses JobScheduler for API 23+%0A * %3Cli%3EUses a custom AlarmManager + BroadcastReceiver implementation for API 14-22%3C/ul%3E%0A * %3Cp%3E%0A * All work must be done in a %7B@link androidx.work.ListenableWorker%7D class.  A simple%0A * implementation, %7B@link androidx.work.Worker%7D, is recommended as the starting point for most%0A * developers.  With the optional dependencies, you can also use %7B@code CoroutineWorker%7D or%0A * %7B@code RxWorker%7D.%0A * %3Cp%3E%0A * There are two types of work supported by WorkManager: %7B@link androidx.work.OneTimeWorkRequest%7D%0A * and %7B@link androidx.work.PeriodicWorkRequest%7D.  OneTimeWorkRequests can be chained together into%0A * acyclic graphs.  Work is eligible for execution when all of its prerequisites are complete.%0A * If any of its prerequisites fail or are cancelled, the work will never run.%0A * %3Cp%3E%0A * WorkRequests can accept %7B@link androidx.work.Constraints%7D, inputs (see%0A * %7B@link androidx.work.Data%7D), and backoff criteria.  WorkRequests can be tagged with%0A * human-readable Strings (see %7B@link androidx.work.WorkRequest.Builder#addTag(String)%7D), and%0A * chains of work can be given a uniquely-identifiable name with conflict policies. *%0A * %3Cp%3E%0A * %3Cb%3EManually initializing WorkManager%3C/b%3E%0A * %3Cp%3E%0A * You can manually initialize WorkManager and provide a custom %7B@link androidx.work.Configuration%7D%0A * for it.  Please see %7B@link androidx.work.WorkManager#initialize(Context, Configuration)%7D.%0A */%0Apackage androidx.work;%0A%0Aimport android.content.Context;%0A

Add WorkManager package-level documentation.