Example for Source.fromIterator #25468 (#28582)

* add example for Source.fromIterator #25468

* scala fmt code style fix

* don't use test as a sample for docs
This commit is contained in:
Evgeny Sidorov 2020-02-11 16:58:00 +03:00 committed by GitHub
parent 6120b73918
commit dcdaa5a0dd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 72 additions and 0 deletions

View file

@ -19,6 +19,15 @@ for each materialization, which is the reason the @scala[`method`] @java[`factor
If the iterator perform blocking operations, make sure to run it on a separate dispatcher.
## Example
Scala
: @@snip [From.scala](/akka-docs/src/test/scala/docs/stream/operators/source/From.scala) { #from-iterator }
Java
: @@snip [From.java](/akka-docs/src/test/java/jdocs/stream/operators/source/From.java) { #from-iterator }
## Reactive Streams semantics
@@@div { .callout }

View file

@ -0,0 +1,26 @@
/*
* Copyright (C) 2020 Lightbend Inc. <https://www.lightbend.com>
*/
package jdocs.stream.operators.source;
import akka.actor.ActorSystem;
import akka.stream.javadsl.Source;
import java.util.Arrays;
public class From {
private ActorSystem system = null;
void fromIteratorSample() {
// #from-iterator
Source.fromIterator(() -> Arrays.asList(1, 2, 3).iterator())
.runForeach(System.out::println, system);
// could print
// 1
// 2
// 3
// #from-iterator
}
}

View file

@ -0,0 +1,24 @@
/*
* Copyright (C) 2020 Lightbend Inc. <https://www.lightbend.com>
*/
package docs.stream.operators.source
import akka.actor.ActorSystem
import akka.stream.scaladsl.Source
object From {
implicit val system: ActorSystem = null
def fromIteratorSample(): Unit = {
//#from-iterator
Source.fromIterator(() => (1 to 3).iterator).runForeach(println)
// could print
// 1
// 2
// 3
//#from-iterator
}
}