Предположим, что у меня есть два бесконечных источника того же типа, которые могут быть подключены к одному графику. Я хочу переключиться между ними извне уже материализованного графика, может быть так же, как можно отключить один из них с помощью KillSwitch.Как переключаться между несколькими источниками?
val source1: Source[ByteString, NotUsed] = ???
val source2: Source[ByteString, NotUsed] = ???
val (switcher: Switcher, source: Source[ByteString, NotUsed]) =
Source.combine(source1,source2).withSwitcher.run()
switcher.switch()
По умолчанию я хочу использовать source1
и после того, как переключатель, я хочу использовать данные из source2
source1
\
switcher ~> source
source2
Можно ли реализовать эту логику с Akka Streams?