OptionalPendingResult

public abstract class OptionalPendingResult extends PendingResult<R extends Result>

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.

Public Constructor Summary

Public Method Summary

abstract R
get()
Returns the Result immediately if it is available.
abstract boolean
isDone()
Returns true if the result is available immediately, false otherwise.

Inherited Method Summary

Public Constructors

public OptionalPendingResult ()

Public Methods

public abstract R get ()

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(), PendingResult.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 Releasable.release() should be used to free the associated resources.

Throws
IllegalStateException when the result is not isDone().

public abstract boolean isDone ()

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