OptionalPendingResult

abstract class OptionalPendingResult<R : Result?> : PendingResult


Each OptionalPendingResult is a PendingResult with additional support for non-blocking accessors. The result of an OptionalPendingResult may be available immediately. If the result is available isDone will return true.

Parameters
<R : Result?>

Result returned by various accessors.

Summary

Public constructors

Public functions

abstract R!
get()

Returns the Result immediately if it is available.

abstract Boolean

Returns true if the result is available immediately, false otherwise.

Inherited functions

From com.google.android.gms.common.api.PendingResult
abstract R

Blocks until the task is completed.

abstract R
await(time: Long, units: TimeUnit)

Blocks until the task is completed or has timed out waiting for the result.

abstract Unit

Requests that the PendingResult be canceled.

abstract Boolean

Indicates whether the pending result has been canceled either due to calling disconnect or calling cancel directly on the pending result or an enclosing Batch.

abstract Unit

Set the callback here if you want the result to be delivered via a callback when the result is ready.

abstract Unit
setResultCallback(
    callback: ResultCallback<Any!>,
    time: Long,
    units: TimeUnit
)

Set the callback here if you want the result to be delivered via a callback when the result is ready or has timed out waiting for the result.

TransformedResult<S!>
<S : Result?> then(transform: ResultTransform<Any!, S!>)

Transforms the result by making another API call.

Public constructors

OptionalPendingResult

OptionalPendingResult()

Public functions

get

abstract fun get(): R!

Returns the Result immediately if it is available. If the result is not available, an exception will be thrown. This method should only be called after checking that isDone returns true.

After the result has been retrieved using get, await, or has been delivered to the result callback, it is an error to attempt to retrieve the result again. It is the responsibility of the caller or callback receiver to release any resources associated with the returned result. Some result types may implement Releasable, in which case release should be used to free the associated resources.

Throws
java.lang.IllegalStateException

when the result is not isDone.

isDone

abstract fun isDone(): Boolean

Returns true if the result is available immediately, false otherwise.