diff options
Diffstat (limited to 'src/main/scala/xyz/driver/core/rest/errors/APIError.scala')
-rw-r--r-- | src/main/scala/xyz/driver/core/rest/errors/APIError.scala | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/src/main/scala/xyz/driver/core/rest/errors/APIError.scala b/src/main/scala/xyz/driver/core/rest/errors/APIError.scala deleted file mode 100644 index e0400fb..0000000 --- a/src/main/scala/xyz/driver/core/rest/errors/APIError.scala +++ /dev/null @@ -1,40 +0,0 @@ -package xyz.driver.core.rest.errors - -import akka.http.scaladsl.model.{StatusCode, StatusCodes} - -abstract class APIError extends Throwable { - def isPatientSensitive: Boolean = false - - def statusCode: StatusCode - def message: String -} - -final case class InvalidInputError(override val message: String = "Invalid input", - override val isPatientSensitive: Boolean = false) - extends APIError { - override def statusCode: StatusCode = StatusCodes.BadRequest -} - -final case class InvalidActionError(override val message: String = "This action is not allowed", - override val isPatientSensitive: Boolean = false) - extends APIError { - override def statusCode: StatusCode = StatusCodes.Forbidden -} - -final case class ResourceNotFoundError(override val message: String = "Resource not found", - override val isPatientSensitive: Boolean = false) - extends APIError { - override def statusCode: StatusCode = StatusCodes.NotFound -} - -final case class ExternalServiceTimeoutError(override val message: String = "Another service took too long to respond", - override val isPatientSensitive: Boolean = false) - extends APIError { - override def statusCode: StatusCode = StatusCodes.GatewayTimeout -} - -final case class DatabaseError(override val message: String = "Database access error", - override val isPatientSensitive: Boolean = false) - extends APIError { - override def statusCode: StatusCode = StatusCodes.InternalServerError -} |