2015-04-15 9 views
7

ich glatt 3.0 bin mit und haben eine databasepublisher Objekt alsAkka-http-Streaming-Slick 3.0 mit Databasepublisher

def getAsStream = db.stream[Entity](tblquery.result) 

ich akka-http für Restschicht verwende wie folgt

val route = 
path("stream"){ 
get { 
    complete { // how to stream from here } 
    } 
} 

Wie kann Ich benutze dieses Datenbank-Publisher-Objekt, um jede Zeile in den Client zu transformieren (json) und zu streamen. Bitte helfen Sie.

+0

Kranker kehrt ein ReactiveStream Verlag. Das ist also eher eine Akka-Frage als eine Slick-Frage. Nur zu deiner Information. – cvogt

Antwort

2

ich endlich so etwas wie dies zu tun, ich weiß nicht, ob sein richtigen Weg,

complete { 
     val source = Source(repository.getAsStream).map(a => ChunkStreamPart(a.asJson)) 
     HttpResponse(entity = HttpEntity.Chunked(MediaTypes.`application/json`, source)) 
     }