Sink.lastOption
Materialize a Future[Option[T]]
CompletionStage<Optional<T>>
which completes with the last value emitted wrapped in an Some
Optional
when the stream completes.
Signature
Sink.lastOption
Sink.lastOption
Description
Materialize a Future[Option[T]]
CompletionStage<Optional<T>>
which completes with the last value emitted wrapped in an Some
Optional
when the stream completes. if the stream completes with no elements the CompletionStage
is completed with None
an empty Optional
.
Example
- Scala
-
source
val source = Source.empty[Int] val result: Future[Option[Int]] = source.runWith(Sink.lastOption) result.map(println) // None
- Java
-
source
Source<Integer, NotUsed> source = Source.empty(); CompletionStage<Optional<Integer>> result = source.runWith(Sink.lastOption(), system); result.thenAccept(System.out::println); // Optional.empty
Reactive Streams semantics
cancels never
backpressures never