aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/trialhistory.scala
blob: c8df1d8437c4ddd7e98bee46e070da3cdfd75513 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package xyz.driver.pdsuidomain.formats.json

import spray.json._
import xyz.driver.core.json._
import xyz.driver.pdsuidomain.entities._

object trialhistory {
  import DefaultJsonProtocol._
  import TrialHistory._
  import common._

  implicit val trialStateFormat = new EnumJsonFormat[State](
    "Summarize"    -> State.Summarize,
    "Criteriarize" -> State.Criteriarize,
    "Review"       -> State.Review,
    "Flag"         -> State.Flag
  )

  implicit val trialActionFormat = new EnumJsonFormat[Action](
    "Start"    -> Action.Start,
    "Submit"   -> Action.Submit,
    "Unassign" -> Action.Unassign,
    "Resolve"  -> Action.Resolve,
    "Flag"     -> Action.Flag,
    "Archive"  -> Action.Archive
  )

  implicit val trialHistoryFormat: RootJsonFormat[TrialHistory] = jsonFormat7(TrialHistory.apply)

}