如果下游分支失败,则失败akka-stream图

时间:2016-02-15 23:07:29

标签: scala akka-stream

我不确定如何提问。我基本上想知道的是,如果有可能让这个图表返回失败,即使它的输出是失败的上游:

def flow(n: String) = Flow[Int].map{v => println(s"$n: $v"); v + 1}

val g = Source.fromGraph(GraphDSL.create() { implicit b =>
    import GraphDSL.Implicits._

    val broadcast = b.add(Broadcast[Int](2))
    val source = b.add(Source.single(1))

    source ~> flow("A") ~> broadcast

    broadcast.out(1) ~> flow("B") ~> flow("C").mapAsync(1){ _ => Future.failed(new Exception())} ~> Sink.foreach[Int](f => println("OK"))

    SourceShape(broadcast.out(0))
})

0 个答案:

没有答案