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
-
val source = Source.empty[Int] val result: Future[Option[Int]] = source.runWith(Sink.lastOption) result.map(println) // None
- Java
-
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