aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/trialhistory.scala
blob: f71ec12404511263e40f8c403504cee38411b003 (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
31
32
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,
    "ReviewSummary"  -> State.ReviewSummary,
    "ReviewCriteria" -> State.ReviewCriteria,
    "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)

}