aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuicommon/error/ErrorCode.scala
diff options
context:
space:
mode:
authorJakob Odersky <jakob@driver.xyz>2017-07-12 22:26:07 -0700
committerJakob Odersky <jakob@driver.xyz>2017-07-12 22:30:35 -0700
commit3e700be0b7df8022627b1f46890f3e3dad3fa54b (patch)
tree0066df95d2a2f033faf9e3e0f9eca92c9c1aad31 /src/main/scala/xyz/driver/pdsuicommon/error/ErrorCode.scala
parentf9ac0adf5c3bcfcde03bd3ea2bc2471b0d0f99fe (diff)
downloadrest-query-3e700be0b7df8022627b1f46890f3e3dad3fa54b.tar.gz
rest-query-3e700be0b7df8022627b1f46890f3e3dad3fa54b.tar.bz2
rest-query-3e700be0b7df8022627b1f46890f3e3dad3fa54b.zip
Handle errors by failing futures in REST services
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuicommon/error/ErrorCode.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuicommon/error/ErrorCode.scala17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuicommon/error/ErrorCode.scala b/src/main/scala/xyz/driver/pdsuicommon/error/ErrorCode.scala
new file mode 100644
index 0000000..5574c01
--- /dev/null
+++ b/src/main/scala/xyz/driver/pdsuicommon/error/ErrorCode.scala
@@ -0,0 +1,17 @@
+package xyz.driver.pdsuicommon.error
+
+import play.api.libs.functional.syntax._
+import play.api.libs.json.{Format, Reads, Writes}
+
+@SuppressWarnings(Array("org.wartremover.warts.Enumeration"))
+object ErrorCode extends Enumeration {
+
+ type ErrorCode = Value
+ val Unspecified = Value(1)
+
+ private val fromJsonReads: Reads[ErrorCode] = Reads.of[Int].map(ErrorCode.apply)
+ private val toJsonWrites: Writes[ErrorCode] = Writes.of[Int].contramap(_.id)
+
+ implicit val jsonFormat: Format[ErrorCode] = Format(fromJsonReads, toJsonWrites)
+
+}