aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/core/rest/errors/serviceException.scala
diff options
context:
space:
mode:
authorZach Smith <zach@driver.xyz>2017-10-19 13:49:22 -0700
committerZach Smith <zach@driver.xyz>2017-10-31 09:19:04 -0700
commite7d849b55f975f1c119cebb22f95d9de903ae3c3 (patch)
treea593bc7ac4722c910efc0f026543ecee8badd14d /src/main/scala/xyz/driver/core/rest/errors/serviceException.scala
parent2e2d4df8749c02df20c29a36090daa1a76344656 (diff)
downloaddriver-core-e7d849b55f975f1c119cebb22f95d9de903ae3c3.tar.gz
driver-core-e7d849b55f975f1c119cebb22f95d9de903ae3c3.tar.bz2
driver-core-e7d849b55f975f1c119cebb22f95d9de903ae3c3.zip
Stop catching throwable, remove PHI filtering, move status code logic to exception handler
Diffstat (limited to 'src/main/scala/xyz/driver/core/rest/errors/serviceException.scala')
-rw-r--r--src/main/scala/xyz/driver/core/rest/errors/serviceException.scala40
1 files changed, 9 insertions, 31 deletions
diff --git a/src/main/scala/xyz/driver/core/rest/errors/serviceException.scala b/src/main/scala/xyz/driver/core/rest/errors/serviceException.scala
index 94f9734..7aa70bf 100644
--- a/src/main/scala/xyz/driver/core/rest/errors/serviceException.scala
+++ b/src/main/scala/xyz/driver/core/rest/errors/serviceException.scala
@@ -1,41 +1,19 @@
package xyz.driver.core.rest.errors
-import akka.http.scaladsl.model.{StatusCode, StatusCodes}
-
abstract class ServiceException extends Exception {
- def isPatientSensitive: Boolean = false
-
- def statusCode: StatusCode
def message: String
}
-final case class InvalidInputException(override val message: String = "Invalid input",
- override val isPatientSensitive: Boolean = false)
- extends ServiceException {
- override def statusCode: StatusCode = StatusCodes.BadRequest
-}
+final case class InvalidInputException(override val message: String = "Invalid input") extends ServiceException
-final case class InvalidActionException(override val message: String = "This action is not allowed",
- override val isPatientSensitive: Boolean = false)
- extends ServiceException {
- override def statusCode: StatusCode = StatusCodes.Forbidden
-}
+final case class InvalidActionException(override val message: String = "This action is not allowed")
+ extends ServiceException
-final case class ResourceNotFoundException(override val message: String = "Resource not found",
- override val isPatientSensitive: Boolean = false)
- extends ServiceException {
- override def statusCode: StatusCode = StatusCodes.NotFound
-}
+final case class ResourceNotFoundException(override val message: String = "Resource not found")
+ extends ServiceException
-final case class ExternalServiceTimeoutException(override val message: String =
- "Another service took too long to respond",
- override val isPatientSensitive: Boolean = false)
- extends ServiceException {
- override def statusCode: StatusCode = StatusCodes.GatewayTimeout
-}
+final case class ExternalServiceTimeoutException(
+ override val message: String = "Another service took too long to respond")
+ extends ServiceException
-final case class DatabaseException(override val message: String = "Database access error",
- override val isPatientSensitive: Boolean = false)
- extends ServiceException {
- override def statusCode: StatusCode = StatusCodes.InternalServerError
-}
+final case class DatabaseException(override val message: String = "Database access error") extends ServiceException