aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZach Smith <zach@driver.xyz>2017-10-12 18:17:36 -0700
committerZach Smith <zach@driver.xyz>2017-10-31 09:17:49 -0700
commit4715cdab47febe8bb75c81d45d9619fc224477bc (patch)
tree79ecd86ca1639bd17aa67ac5839fe34e77e7d71d
parentedbfe3d11eefe10f6d45752d1132e7349e1c6750 (diff)
downloaddriver-core-4715cdab47febe8bb75c81d45d9619fc224477bc.tar.gz
driver-core-4715cdab47febe8bb75c81d45d9619fc224477bc.tar.bz2
driver-core-4715cdab47febe8bb75c81d45d9619fc224477bc.zip
Add more API Error types
-rw-r--r--src/main/scala/xyz/driver/core/rest/errors/APIError.scala24
1 files changed, 24 insertions, 0 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
index f2bfae1..e0400fb 100644
--- a/src/main/scala/xyz/driver/core/rest/errors/APIError.scala
+++ b/src/main/scala/xyz/driver/core/rest/errors/APIError.scala
@@ -14,3 +14,27 @@ final case class InvalidInputError(override val message: String = "Invalid input
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
+}