From 99ed562dda77ff2cdf0a1e007a3c17f64aafd4c8 Mon Sep 17 00:00:00 2001 From: Konrad 'ktoso' Malawski Date: Thu, 30 Oct 2014 19:47:14 +0100 Subject: [PATCH] =str removing duplicate fold sink definition on Sink --- .../src/test/java/akka/stream/javadsl/SinkTest.java | 11 +++++++++++ .../src/main/scala/akka/stream/javadsl/Sink.scala | 12 ------------ 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/akka-stream-tests/src/test/java/akka/stream/javadsl/SinkTest.java b/akka-stream-tests/src/test/java/akka/stream/javadsl/SinkTest.java index a7027160b4..8c8b9b4719 100644 --- a/akka-stream-tests/src/test/java/akka/stream/javadsl/SinkTest.java +++ b/akka-stream-tests/src/test/java/akka/stream/javadsl/SinkTest.java @@ -6,6 +6,7 @@ package akka.stream.javadsl; import java.util.ArrayList; import java.util.List; +import akka.stream.javadsl.japi.Function2; import org.junit.ClassRule; import org.junit.Test; import org.reactivestreams.Publisher; @@ -44,4 +45,14 @@ public class SinkTest { assert Await.result(future, Duration.create("1 second")).equals(1); } + @Test + public void mustBeAbleToUseFold() throws Exception { + KeyedSink> foldSink = Sink.fold(0, new Function2() { + @Override public Integer apply(Integer arg1, Integer arg2) throws Exception { + return arg1 + arg2; + } + }); + Future integerFuture = Source.from(new ArrayList()).runWith(foldSink, materializer); + } + } diff --git a/akka-stream/src/main/scala/akka/stream/javadsl/Sink.scala b/akka-stream/src/main/scala/akka/stream/javadsl/Sink.scala index f88a90e0e2..80990741cd 100644 --- a/akka-stream/src/main/scala/akka/stream/javadsl/Sink.scala +++ b/akka-stream/src/main/scala/akka/stream/javadsl/Sink.scala @@ -109,18 +109,6 @@ object Sink { def future[In]: KeyedSink[In, Future[In]] = new KeyedSink(scaladsl.Sink.future[In]) - /** - * A `Sink` that will invoke the given function for every received element, giving it its previous - * output (or the given `zero` value) and the element as input. - * The returned [[scala.concurrent.Future]] will be completed with value of the final - * function evaluation when the input stream ends, or completed with `Failure` - * if there is an error is signaled in the stream. - */ - def fold[U, T](zero: U, f: Function[akka.japi.Pair[U, T], U]): KeyedSink[T, Future[U]] = { - val sSink = scaladsl.Sink.fold[U, T](zero) { case (a, b) ⇒ f.apply(akka.japi.Pair(a, b)) } - new KeyedSink(sSink) - } - } /**