From 009c58e67b5ebb4f2df5942a7692ffac16345707 Mon Sep 17 00:00:00 2001 From: Shikhar Bhushan Date: Sat, 6 Mar 2010 01:22:09 +0100 Subject: [PATCH] exceptions raised by Future / Event can be Throwable instances as earlier, instead of Exception --- src/main/java/net/schmizz/concurrent/Event.java | 2 +- src/main/java/net/schmizz/concurrent/Future.java | 4 ++-- src/main/java/net/schmizz/concurrent/FutureUtils.java | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/net/schmizz/concurrent/Event.java b/src/main/java/net/schmizz/concurrent/Event.java index 55913ca5..23b1c62b 100644 --- a/src/main/java/net/schmizz/concurrent/Event.java +++ b/src/main/java/net/schmizz/concurrent/Event.java @@ -31,7 +31,7 @@ import java.util.concurrent.locks.ReentrantLock; * * @see Future */ -public class Event +public class Event extends Future { /** diff --git a/src/main/java/net/schmizz/concurrent/Future.java b/src/main/java/net/schmizz/concurrent/Future.java index 5e3204b9..06e00eb7 100644 --- a/src/main/java/net/schmizz/concurrent/Future.java +++ b/src/main/java/net/schmizz/concurrent/Future.java @@ -30,7 +30,7 @@ import java.util.concurrent.locks.ReentrantLock; * For atomic operations on a future, e.g. checking if a value is set and if it is not then setting it - in other words, * Compare-And-Set type operations - the associated lock for the future should be acquired while doing so. */ -public class Future { +public class Future { private final Logger log; @@ -88,7 +88,7 @@ public class Future { * * @param e the error */ - public void error(Exception e) { + public void error(Throwable e) { lock(); try { pendingEx = chainer.chain(e); diff --git a/src/main/java/net/schmizz/concurrent/FutureUtils.java b/src/main/java/net/schmizz/concurrent/FutureUtils.java index dce60e5b..4520eb4f 100644 --- a/src/main/java/net/schmizz/concurrent/FutureUtils.java +++ b/src/main/java/net/schmizz/concurrent/FutureUtils.java @@ -19,12 +19,12 @@ import java.util.Collection; public class FutureUtils { - public static void alertAll(Exception x, Future... futures) { + public static void alertAll(Throwable x, Future... futures) { for (Future f : futures) f.error(x); } - public static void alertAll(Exception x, Collection futures) { + public static void alertAll(Throwable x, Collection futures) { for (Future f : futures) f.error(x); }