ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/jsr166e/CompletableFuture.java
(Generate patch)

Comparing jsr166/src/jsr166e/CompletableFuture.java (file contents):
Revision 1.2 by dl, Wed Jan 2 17:37:14 2013 UTC vs.
Revision 1.3 by dl, Wed Jan 2 18:20:16 2013 UTC

# Line 2644 | Line 2644 | public class CompletableFuture<T> implem
2644       * completed. This method is designed for use only in error
2645       * recovery actions, and even in such situations may result in
2646       * ongoing dependent completions using established versus
2647 <     * overwritten values.
2647 >     * overwritten outcomes.
2648       *
2649       * @param value the completion value
2650       */
# Line 2653 | Line 2653 | public class CompletableFuture<T> implem
2653          postComplete();
2654      }
2655  
2656 +    /**
2657 +     * Forcibly causes subsequent invocations of method get() and
2658 +     * related methods to throw the given exception, whether or not
2659 +     * already completed. This method is designed for use only in
2660 +     * recovery actions, and even in such situations may result in
2661 +     * ongoing dependent completions using established versus
2662 +     * overwritten outcomes.
2663 +     *
2664 +     * @param ex the exception
2665 +     */
2666 +    public void obtrudeException(Throwable ex) {
2667 +        if (ex == null) throw new NullPointerException();
2668 +        result = new AltResult(ex);
2669 +        postComplete();
2670 +    }
2671 +
2672      // Unsafe mechanics
2673      private static final sun.misc.Unsafe UNSAFE;
2674      private static final long RESULT;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines