aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/services/TrialService.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/TrialService.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/services/TrialService.scala18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/TrialService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/TrialService.scala
index 3148842..d140d27 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/services/TrialService.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/services/TrialService.scala
@@ -9,6 +9,7 @@ import xyz.driver.pdsuicommon.error.DomainError
import xyz.driver.pdsuicommon.logging._
import xyz.driver.pdsuidomain.entities.Trial
import xyz.driver.pdsuidomain.entities.Trial.PdfSource
+import xyz.driver.pdsuidomain.entities.export.trial.ExportTrialWithLabels
import scala.concurrent.Future
@@ -51,6 +52,20 @@ object TrialService {
}
}
+ sealed trait GetTrialWithLabelsReply
+ object GetTrialWithLabelsReply {
+ type Error = GetTrialWithLabelsReply with DomainError
+
+ final case class Entity(x: ExportTrialWithLabels) extends GetTrialWithLabelsReply
+
+ case object NotFoundError extends GetTrialWithLabelsReply with DomainError.NotFoundError {
+ def userMessage: String = "Trial not found"
+ }
+
+ case object AuthorizationError
+ extends GetTrialWithLabelsReply with DomainError.AuthorizationError with DefaultAccessDeniedError
+ }
+
sealed trait GetPdfSourceReply
object GetPdfSourceReply {
type Error = GetPdfSourceReply with DomainError
@@ -95,6 +110,9 @@ trait TrialService {
def getById(id: StringId[Trial])(implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply]
+ def getTrialWithLabels(trialId: StringId[Trial], condition: String)(
+ implicit requestContext: AuthenticatedRequestContext): Future[GetTrialWithLabelsReply]
+
def getPdfSource(trialId: StringId[Trial])(
implicit requestContext: AuthenticatedRequestContext): Future[GetPdfSourceReply]