Interface Promise<V>

  • All Known Implementing Classes:
    DefaultPromise

    public interface Promise<V>
    Special Future which is writable.
    • Method Detail

      • setSuccess

        Promise<V> setSuccess​(V result)
        Marks this promise as a success and notifies all listeners attached to the future.

        If it is success or failed already it will throw an IllegalStateException.

      • trySuccess

        boolean trySuccess​(V result)
        Marks this future as a success and notifies all listeners.
        Returns:
        true if and only if successfully marked this promise as a success. Otherwise false because this promise is already marked as either a success or a failure.
      • tryFailure

        boolean tryFailure​(Throwable cause)
        Marks this promise as a failure and notifies all listeners.
        Returns:
        true if and only if successfully marked this promise as a failure. Otherwise false because this promise is already marked as either a success or a failure.
      • setUncancellable

        boolean setUncancellable()
        Make this promise impossible to cancel.
        Returns:
        true if and only if successfully marked this promise as uncancellable. Otherwise false if this promise has been cancelled already, or has completed.
      • asFuture

        Future<V> asFuture()
        Return the Future instance is associated with this promise. This future will be completed upon completion of this promise.
        Returns:
        A future instance associated with this promise.
      • cancel

        boolean cancel()
        Cancel this asynchronous operation, unless it has already been completed or is not cancellable.

        A cancelled operation is considered to be done and failed.

        If the cancellation was successful, the result of this operation will be that it has failed with a CancellationException.

        Cancellation will not cause any threads working on the operation to be interrupted.

        Returns:
        true if the operation was cancelled by this call, otherwise false.
      • isSuccess

        boolean isSuccess()
        Returns true if and only if the operation was completed successfully.
      • isFailed

        boolean isFailed()
        Returns true if and only if the operation was completed and failed.
      • isCancelled

        boolean isCancelled()
        Return true if this operation has been cancelled.
        Returns:
        true if this operation has been cancelled, otherwise false.
      • isDone

        boolean isDone()
        Return true if this operation has been completed either successfully, unsuccessfully, or through cancellation.
        Returns:
        true if this operation has completed, otherwise false.
      • isCancellable

        boolean isCancellable()
        Returns true if and only if the operation can be cancelled via cancel(). Note that this is inherently racy, as the operation could be made uncancellable at any time.
        Returns:
        true if this operation can be cancelled.
      • getNow

        V getNow()
        Return the successful result of this asynchronous operation, if any. If the operation has not yet been completed, then this will throw IllegalStateException. If the operation has been cancelled or failed with an exception, then this returns null. Note that asynchronous operations can also be completed successfully with a null result.
        Returns:
        the result of this operation, if completed successfully.
        Throws:
        IllegalStateException - if this Future or Promise has not completed yet.
      • cause

        Throwable cause()
        Returns the cause of the failed operation if the operation has failed.
        Returns:
        The cause of the failure, if any. Otherwise null if succeeded.
        Throws:
        IllegalStateException - if this Promise has not completed yet.