From 7d6376873a5bdeca2c9a67f0a0db99faa78b5967 Mon Sep 17 00:00:00 2001 From: vlad Date: Thu, 5 Oct 2017 00:03:22 -0700 Subject: Support for exporting multiple trials --- .../driver/pdsuidomain/services/rest/RestTrialService.scala | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala index 7e33919..42f32fc 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala @@ -16,6 +16,7 @@ import xyz.driver.pdsuidomain.entities.export.trial.ExportTrialWithLabels import xyz.driver.pdsuidomain.formats.json.ListResponse import xyz.driver.pdsuidomain.formats.json.trial.ApiTrial import xyz.driver.pdsuidomain.services.TrialService +import spray.json.DefaultJsonProtocol._ import akka.http.scaladsl.marshallers.sprayjson.SprayJsonSupport._ import xyz.driver.pdsuidomain.formats.json.sprayformats.export._ @@ -47,6 +48,17 @@ class RestTrialService(transport: ServiceTransport, baseUri: Uri)(implicit prote } } + def getTrialsWithLabels(disease: String)( + implicit requestContext: AuthenticatedRequestContext): Future[GetTrialsWithLabelsReply] = { + val request = HttpRequest(HttpMethods.GET, endpointUri(baseUri, s"/v1/export/trial/$disease")) + for { + response <- transport.sendRequestGetResponse(requestContext)(request) + reply <- apiResponse[Seq[ExportTrialWithLabels]](response) + } yield { + GetTrialsWithLabelsReply.EntityList(reply) + } + } + def getPdfSource(trialId: StringId[Trial])( implicit requestContext: AuthenticatedRequestContext): Future[Source[ByteString, NotUsed]] = { val request = HttpRequest(HttpMethods.GET, endpointUri(baseUri, s"/v1/trial/$trialId/source")) -- cgit v1.2.3