diff options
author | vlad <vlad@driver.xyz> | 2017-07-21 15:11:19 -0700 |
---|---|---|
committer | vlad <vlad@driver.xyz> | 2017-07-21 15:11:19 -0700 |
commit | 4c9d4f0679f7b1f4ab179c8d3208cf207c81635a (patch) | |
tree | 399852c34f3c5bb734a8deb5df4e85fae09cfd3d /src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala | |
parent | 5279d01cedb35a759347f194c0e8adb21d19e88e (diff) | |
download | rest-query-4c9d4f0679f7b1f4ab179c8d3208cf207c81635a.tar.gz rest-query-4c9d4f0679f7b1f4ab179c8d3208cf207c81635a.tar.bz2 rest-query-4c9d4f0679f7b1f4ab179c8d3208cf207c81635a.zip |
Export service separation
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala | 15 |
1 files changed, 12 insertions, 3 deletions
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 e1f9d87..b8aae88 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/rest/RestTrialService.scala @@ -1,8 +1,6 @@ package xyz.driver.pdsuidomain.services.rest -import scala.NotImplementedError import scala.concurrent.{ExecutionContext, Future} - import akka.http.scaladsl.marshalling.Marshal import akka.http.scaladsl.model._ import akka.stream.ActorMaterializer @@ -12,6 +10,7 @@ import xyz.driver.pdsuicommon.db._ import xyz.driver.pdsuicommon.domain._ import xyz.driver.pdsuidomain.entities._ import xyz.driver.pdsuidomain.formats.json.ListResponse +import xyz.driver.pdsuidomain.formats.json.export.ApiExportTrialWithLabels import xyz.driver.pdsuidomain.formats.json.trial.ApiTrial import xyz.driver.pdsuidomain.services.TrialService @@ -33,6 +32,17 @@ class RestTrialService(transport: ServiceTransport, baseUri: Uri)( } } + def getTrialWithLabels(trialId: StringId[Trial], condition: String)( + implicit requestContext: AuthenticatedRequestContext): Future[GetTrialWithLabelsReply] = { + val request = HttpRequest(HttpMethods.GET, endpointUri(baseUri, s"/v1/export/trial/$trialId")) + for { + response <- transport.sendRequestGetResponse(requestContext)(request) + reply <- apiResponse[ApiExportTrialWithLabels](response) + } yield { + GetTrialWithLabelsReply.Entity(reply.toDomain) + } + } + def getPdfSource(trialId: StringId[Trial])( implicit requestContext: AuthenticatedRequestContext): Future[GetPdfSourceReply] = Future.failed(new NotImplementedError("Streaming PDF over network is not supported.")) @@ -91,5 +101,4 @@ class RestTrialService(transport: ServiceTransport, baseUri: Uri)( singleAction(origTrial, "archive") def unassign(origTrial: Trial)(implicit requestContext: AuthenticatedRequestContext): Future[UpdateReply] = singleAction(origTrial, "unassign") - } |