Sink.head

Materializes into a Future CompletionStage which completes with the first value arriving, after this the stream is canceled.

Sink operators

Signature

Sink.headSink.head

Description

Materializes into a Future CompletionStage which completes with the first value arriving, after this the stream is canceled. If no element is emitted, the Future CompletionStage is failed.

Example

Scala
sourceval source = Source(1 to 10)
val result: Future[Int] = source.runWith(Sink.head)
result.map(println)
// 1
Java
sourceSource<Integer, NotUsed> source = Source.from(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
CompletionStage<Integer> result = source.runWith(Sink.head(), system);
result.thenAccept(System.out::println);
// 1

Reactive Streams semantics

cancels after receiving one element

backpressures never