diff options
author | Heather Miller <heather.miller@epfl.ch> | 2012-01-31 13:07:13 +0100 |
---|---|---|
committer | Heather Miller <heather.miller@epfl.ch> | 2012-01-31 13:07:13 +0100 |
commit | 0d23e83d136436109c957fb44ac328bdfaa8a658 (patch) | |
tree | 646bb4c4f69d933b70d5565669e5ecdd7c024b7a /src/library/scala/concurrent/ExecutionContext.scala | |
parent | 8f36bf7a71f29af5ab61a3f58897881932c1daa3 (diff) | |
download | scala-0d23e83d136436109c957fb44ac328bdfaa8a658.tar.gz scala-0d23e83d136436109c957fb44ac328bdfaa8a658.tar.bz2 scala-0d23e83d136436109c957fb44ac328bdfaa8a658.zip |
Replaced Either with Try throughout scala.concurrent.
Diffstat (limited to 'src/library/scala/concurrent/ExecutionContext.scala')
-rw-r--r-- | src/library/scala/concurrent/ExecutionContext.scala | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/library/scala/concurrent/ExecutionContext.scala b/src/library/scala/concurrent/ExecutionContext.scala index 40fafd130c..99cd264ac5 100644 --- a/src/library/scala/concurrent/ExecutionContext.scala +++ b/src/library/scala/concurrent/ExecutionContext.scala @@ -13,6 +13,7 @@ package scala.concurrent import java.util.concurrent.atomic.{ AtomicInteger } import java.util.concurrent.{ Executors, Future => JFuture, Callable } import scala.util.Duration +import scala.util.{ Try, Success, Failure } import scala.concurrent.forkjoin.{ ForkJoinPool, RecursiveTask => FJTask, RecursiveAction, ForkJoinWorkerThread } import scala.collection.generic.CanBuildFrom import collection._ @@ -74,9 +75,9 @@ trait ExecutionContext { buffer += null.asInstanceOf[T] counter.incrementAndGet() f onComplete { - case Left(t) => + case Failure(t) => p tryFailure t - case Right(v) => + case Success(v) => buffer(currentIndex) = v tryFinish() } @@ -93,7 +94,7 @@ trait ExecutionContext { */ def any[T](futures: Traversable[Future[T]]): Future[T] = { val p = promise[T] - val completeFirst: Either[Throwable, T] => Unit = elem => p tryComplete elem + val completeFirst: Try[T] => Unit = elem => p tryComplete elem futures foreach (_ onComplete completeFirst) @@ -108,9 +109,9 @@ trait ExecutionContext { else { val result = promise[Option[T]] val count = new AtomicInteger(futures.size) - val search: Either[Throwable, T] => Unit = { + val search: Try[T] => Unit = { v => v match { - case Right(r) => if (predicate(r)) result trySuccess Some(r) + case Success(r) => if (predicate(r)) result trySuccess Some(r) case _ => } if (count.decrementAndGet() == 0) result trySuccess None |