aboutsummaryrefslogtreecommitdiff
path: root/shared/ApiProtocol.scala
diff options
context:
space:
mode:
Diffstat (limited to 'shared/ApiProtocol.scala')
-rw-r--r--shared/ApiProtocol.scala18
1 files changed, 15 insertions, 3 deletions
diff --git a/shared/ApiProtocol.scala b/shared/ApiProtocol.scala
index 5d0e00a..eb6da0b 100644
--- a/shared/ApiProtocol.scala
+++ b/shared/ApiProtocol.scala
@@ -1,12 +1,24 @@
package triad
import java.time.Instant
-import spray.json.{DerivedJsonProtocol, JsNumber, JsValue, JsonFormat}
+import spray.json.{
+ DefaultJsonProtocol,
+ JsNumber,
+ JsValue,
+ JsonFormat,
+ RootJsonFormat
+}
-object ApiProtocol extends DerivedJsonProtocol {
+object ApiProtocol extends DefaultJsonProtocol {
implicit val timestampFormat: JsonFormat[Instant] = new JsonFormat[Instant] {
def read(js: JsValue) = Instant.ofEpochMilli(js.convertTo[Long])
def write(i: Instant) = JsNumber(i.toEpochMilli)
}
- implicit val messageFormat = jsonFormat[Message]
+
+ implicit val messageFormat: RootJsonFormat[Message] = jsonFormat(
+ Message.apply _,
+ "content",
+ "author",
+ "timestamp"
+ )
}