diff options
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/StudyDesignService.scala')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/services/StudyDesignService.scala | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/StudyDesignService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/StudyDesignService.scala new file mode 100644 index 0000000..d086c5f --- /dev/null +++ b/src/main/scala/xyz/driver/pdsuidomain/services/StudyDesignService.scala @@ -0,0 +1,28 @@ +package xyz.driver.pdsuidomain.services + +import xyz.driver.pdsuicommon.auth.AuthenticatedRequestContext +import xyz.driver.pdsuicommon.db.Sorting +import xyz.driver.pdsuicommon.error.DomainError +import xyz.driver.pdsuidomain.entities.StudyDesign + +import scala.concurrent.Future + +object StudyDesignService { + sealed trait GetListReply + object GetListReply { + case class EntityList(xs: Seq[StudyDesign], totalFound: Int) extends GetListReply + + case object AuthorizationError + extends GetListReply with DomainError.AuthorizationError { + def userMessage: String = "Access denied" + } + } +} + +trait StudyDesignService { + + import StudyDesignService._ + + def getAll(sorting: Option[Sorting] = None) + (implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] +} |