Use generic type inference and method references in FlowDocTest.java (#30478)

This commit is contained in:
Andrei Arlou 2021-08-23 12:16:34 +03:00 committed by GitHub
parent 6e789d3bc1
commit 29a595f82c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -52,12 +52,11 @@ public class FlowDocTest extends AbstractJavaTest {
final Source<Integer, NotUsed> source =
Source.from(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
source.map(x -> 0); // has no effect on source, since it's immutable
source.runWith(Sink.fold(0, (agg, next) -> agg + next), system); // 55
source.runWith(Sink.fold(0, Integer::sum), system); // 55
// returns new Source<Integer>, with `map()` appended
final Source<Integer, NotUsed> zeroes = source.map(x -> 0);
final Sink<Integer, CompletionStage<Integer>> fold =
Sink.<Integer, Integer>fold(0, (agg, next) -> agg + next);
final Sink<Integer, CompletionStage<Integer>> fold = Sink.fold(0, Integer::sum);
zeroes.runWith(fold, system); // 0
// #source-immutable
@ -71,8 +70,7 @@ public class FlowDocTest extends AbstractJavaTest {
final Source<Integer, NotUsed> source =
Source.from(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
// note that the Future is scala.concurrent.Future
final Sink<Integer, CompletionStage<Integer>> sink =
Sink.<Integer, Integer>fold(0, (aggr, next) -> aggr + next);
final Sink<Integer, CompletionStage<Integer>> sink = Sink.fold(0, Integer::sum);
// connect the Source to the Sink, obtaining a RunnableFlow
final RunnableGraph<CompletionStage<Integer>> runnable = source.toMat(sink, Keep.right());
@ -90,8 +88,7 @@ public class FlowDocTest extends AbstractJavaTest {
// #materialization-runWith
final Source<Integer, NotUsed> source =
Source.from(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
final Sink<Integer, CompletionStage<Integer>> sink =
Sink.<Integer, Integer>fold(0, (aggr, next) -> aggr + next);
final Sink<Integer, CompletionStage<Integer>> sink = Sink.fold(0, Integer::sum);
// materialize the flow, getting the Sinks materialized value
final CompletionStage<Integer> sum = source.runWith(sink, system);
@ -105,8 +102,7 @@ public class FlowDocTest extends AbstractJavaTest {
public void materializedMapUnique() throws Exception {
// #stream-reuse
// connect the Source to the Sink, obtaining a RunnableGraph
final Sink<Integer, CompletionStage<Integer>> sink =
Sink.<Integer, Integer>fold(0, (aggr, next) -> aggr + next);
final Sink<Integer, CompletionStage<Integer>> sink = Sink.fold(0, Integer::sum);
final RunnableGraph<CompletionStage<Integer>> runnable =
Source.from(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)).toMat(sink, Keep.right());
@ -147,7 +143,7 @@ public class FlowDocTest extends AbstractJavaTest {
public void creatingSourcesSinks() throws Exception {
// #source-sink
// Create a source from an Iterable
List<Integer> list = new LinkedList<Integer>();
List<Integer> list = new LinkedList<>();
list.add(1);
list.add(2);
list.add(3);
@ -164,7 +160,7 @@ public class FlowDocTest extends AbstractJavaTest {
// Sink that folds over the stream and returns a Future
// of the final result in the MaterializedMap
Sink.fold(0, (Integer aggr, Integer next) -> aggr + next);
Sink.fold(0, Integer::sum);
// Sink that returns a Future in the MaterializedMap,
// containing the first element of the stream