in app/controllers/FileListController.scala [163:187]
def searchGraph(userInfo:UserInfo, searchTerm:SearchTerm) =
GraphDSL.create() { implicit builder =>
import akka.stream.scaladsl.GraphDSL.Implicits._
val src = builder.add(new OMSearchSource(userInfo, Some(searchTerm), None))
val lookup = builder.add(new OMLookupMetadata(userInfo).async)
src ~> lookup
val outlet = lookup.out
.log("FileListController.searchGraph")
.map(PresentableFile.fromObjectMatrixEntry)
.map(elem=>{
try {
elem.asJson.noSpaces
} catch {
case err:Throwable=>
logger.error(s"json conversion for ${elem.oid} failed: ${err.getMessage}", err)
throw err
}
})
.map(jsonString => ByteString(jsonString + "\n"))
.outlet
SourceShape(outlet)
}