An object that provides information about the execution of an asynchronous command being
WorkManager. Operations are generally tied to enqueue or cancel commands;
when you call one of those commands, they occur asynchronously. You can observe or await these
commands by using the returned Operation.
The lifecycle state of an
public abstract ListenableFuture<Operation.State.SUCCESS> getResult ()
ListenableFuture for the terminal state of the
Operation. This will
only resolve with a
Operation.State.FAILURE state will come through
Throwable on the
Operation.State.IN_PROGRESS will never
be reported as it's not a terminal state.