Skip to content

Instantly share code, notes, and snippets.

@RoRoche
Last active November 21, 2019 17:38
Show Gist options
  • Save RoRoche/228e1754769b34b088721c5d8989d228 to your computer and use it in GitHub Desktop.
Save RoRoche/228e1754769b34b088721c5d8989d228 to your computer and use it in GitHub Desktop.
import androidx.work.OneTimeWorkRequest
import androidx.work.Operation
import androidx.work.WorkManager
class SimpleOneTimeWorkRequest(
private val workManager: WorkManager,
private val worker: OneTimeWorkRequest,
private val operation: Operation
) : ManagedRestRequest {
constructor(
workManager: WorkManager,
worker: OneTimeWorkRequest
) : this(
workManager,
worker,
workManager.enqueue(worker)
)
override fun operation() = operation
override fun liveData() = workManager.getWorkInfoByIdLiveData(worker.id)
override fun cancel() = workManager.cancelWorkById(worker.id)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment