aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala
diff options
context:
space:
mode:
authorvlad <vlad@driver.xyz>2017-07-20 10:37:08 -0700
committervlad <vlad@driver.xyz>2017-07-20 10:37:08 -0700
commit5279d01cedb35a759347f194c0e8adb21d19e88e (patch)
treee340bb2eaba41d917bbca8c5e42b0b76bd164e37 /src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala
parentd9c3283c307105e03253c621b9b25a6308ac3b94 (diff)
parent7f7bd651122754a3df47894b64ddb0456561bbe7 (diff)
downloadrest-query-5279d01cedb35a759347f194c0e8adb21d19e88e.tar.gz
rest-query-5279d01cedb35a759347f194c0e8adb21d19e88e.tar.bz2
rest-query-5279d01cedb35a759347f194c0e8adb21d19e88e.zip
Merge remote-tracking branch 'origin/master'
# Conflicts: # build.sbt # src/main/scala/xyz/driver/pdsuicommon/auth/AuthenticatedRequestContext.scala # src/main/scala/xyz/driver/pdsuicommon/domain/User.scala # src/main/scala/xyz/driver/pdsuidomain/formats/json/user/ApiPartialUser.scala
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala b/src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala
index 4bf90d1..c761414 100644
--- a/src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala
+++ b/src/main/scala/xyz/driver/pdsuicommon/error/DomainError.scala
@@ -28,3 +28,14 @@ object DomainError {
Unsafe(Utils.getClassSimpleName(x.getClass))
}
}
+
+/** Subclasses of this exception correspond to subclasses of DomainError. They
+ * are used in REST service implementations to fail futures rather than
+ * returning successful futures, completed with corresponding DomainErrors. */
+// scalastyle:off null
+@SuppressWarnings(Array("org.wartremover.warts.Null"))
+class DomainException(message: String, cause: Throwable = null) extends RuntimeException(message, cause)
+class NotFoundException(message: String) extends DomainException(message) // 404
+class AuthenticationException(message: String) extends DomainException(message) // 401
+class AuthorizationException(message: String) extends DomainException(message) // 403
+// scalastyle:on null