0
Alpakkaを使用してS3にファイルをアップロードし、同時にTikaと解析してMimeTypeを取得したいとします。2種類のシンクを組み合わせるには?
が、私は、現時点では、グラフの3つの部分を持っている:
val fileSource: Source[ByteString, Any] // comes from Akka-HTTP
val fileUpload: Sink[ByteString, Future[MultipartUploadResult]] // created by S3Client from Alpakka
val mimeTypeDetection: Sink[ByteString, Future[MediaType.Binary]] // my implementation using Apache Tika
私は1つの場所で両方の結果を得るしたい、何かのように:
Future[(MultipartUploadResult, MediaType.Binary)]
私は放送部分と全く問題がありません。
val broadcast = builder.add(Broadcast[ByteString](2))
source ~> broadcast ~> fileUpload
broadcast ~> mimeTypeDetection
は、しかし、私はシンクを構成する問題があります。私がAPIとドキュメントで見つけた方法は、結合されたシンクが同じタイプであるか、シンクではなく、Zipping Flowsであると仮定しています。
このような場合には、どのような方法がありますか?