Я пытаюсь кэшировать потоковый источник на диск, в то время как я также отправляю его как HttpResponse
, т.е. у меня есть Source[ByteString,_]
, который я хочу передать HttpEntity
, но я также хочузапустить те же данные в FileIO.toPath
приемник.
|-> FileIO.toPath
Source[ByteString,_] ->|
|-> HttpEntity(contentType, Source[ByteString,_]
Кажется, что Broadcast
- это то, что я должен использовать для разветвления, но из описания он записывает в два приемника, и пока FileIO.toPath
является приемником, HttpEntity
ожидает Source
.
Существует также Source.fromGraph
, который выглядит так, как будто бы он создает источник из GraphStage, например, Broadcast
, но я не могувыясните, как я могу получить там FileIO
раковину.