【发布时间】:2015-01-27 16:01:31
【问题描述】:
我正在寻找提供Sink 和Source 的SinkSource。如果元素流入Sink,则应在相应的Source 中提供它。下面的代码说明了我的意思:
object SinkSource {
def apply[T] = new {
def sink: Sink[T] = ???
def source: Source[T] = ???
}
}
val flowgraph = FlowGraph { implicit fgb =>
import FlowGraphImplicits._
val sinksource = SinkSource[Int]
Source(1 to 5) ~> sinksource.sink
sinksource.source ~> Sink.foreach(print)
}
implicit val actorSystem = ActorSystem(name = "System")
implicit val flowMaterializer = FlowMaterializer()
val materializedMap = flowgraph.run()
如果执行,应该打印:12345
那么,SinkSource 是否存在(在 API 中没有看到它)或者有谁知道如何实现它?
我应该提一下,我需要对Sink 和Source 进行不同的访问,这样Flow 就不是这种特殊形式的解决方案:
Source(1 to 5) ~> Flow[Int] ~> Sink.foreach(println)
【问题讨论】:
标签: scala akka-stream