diff options
author | Kseniya Tomskikh <ktomskih@datamonsters.co> | 2017-10-02 18:37:52 +0700 |
---|---|---|
committer | Kseniya Tomskikh <ktomskih@datamonsters.co> | 2017-10-02 18:37:52 +0700 |
commit | d0e3c6f37347142a3ef5eab871dde47ea70af304 (patch) | |
tree | a87d24b1b5d6489576f00fe446f05b5110d62cc0 /src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/criterion.scala | |
parent | 283ca02360949143ffe7ee8ad87d51902426b450 (diff) | |
parent | 1913870abec9e31d080f6858d0fc296445852cc6 (diff) | |
download | rest-query-d0e3c6f37347142a3ef5eab871dde47ea70af304.tar.gz rest-query-d0e3c6f37347142a3ef5eab871dde47ea70af304.tar.bz2 rest-query-d0e3c6f37347142a3ef5eab871dde47ea70af304.zip |
Merge branch 'master' into synch-refactor
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/criterion.scala')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/criterion.scala | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/criterion.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/criterion.scala index 732bcad..8da719c 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/criterion.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/criterion.scala @@ -1,6 +1,7 @@ package xyz.driver.pdsuidomain.formats.json.sprayformats import spray.json._ +import xyz.driver.entities.labels.{Label, LabelCategory} import xyz.driver.pdsuicommon.domain.{LongId, StringId} import xyz.driver.pdsuidomain.entities._ import xyz.driver.pdsuidomain.services.CriterionService.RichCriterion @@ -29,7 +30,7 @@ object criterion { val categoryId = fields .get("categoryId") - .map(_.convertTo[LongId[Category]]) + .map(_.convertTo[LongId[LabelCategory]]) val value = fields .get("value") @@ -72,6 +73,11 @@ object criterion { .map(_.convertTo[Option[String]].getOrElse("{}")) .getOrElse(orig.criterion.meta) + val inclusion = fields + .get("inclusion") + .map(_.convertTo[Option[Boolean]]) + .getOrElse(orig.criterion.inclusion) + val arms = fields .get("arms") .map(_.convertTo[Option[List[LongId[Arm]]]].getOrElse(List.empty[LongId[Arm]])) @@ -87,7 +93,8 @@ object criterion { criterion = orig.criterion.copy( meta = meta, text = text, - isCompound = isCompound + isCompound = isCompound, + inclusion = inclusion ), armIds = arms, labels = labels @@ -105,7 +112,8 @@ object criterion { "text" -> obj.criterion.text.toJson, "isCompound" -> obj.criterion.isCompound.toJson, "labels" -> obj.labels.map(_.toJson).toJson, - "trialId" -> obj.criterion.trialId.toJson + "trialId" -> obj.criterion.trialId.toJson, + "inclusion" -> obj.criterion.inclusion.toJson ) override def read(json: JsValue): RichCriterion = json match { @@ -128,6 +136,11 @@ object criterion { .map(_.convertTo[String]) .getOrElse("") + val inclusion = fields + .get("inclusion") + .map(_.convertTo[Option[Boolean]]) + .getOrElse(None) + val arms = fields .get("arms") .map(_.convertTo[List[LongId[Arm]]]) @@ -145,7 +158,8 @@ object criterion { trialId = trialId, text = text, isCompound = isCompound, - meta = meta + meta = meta, + inclusion = inclusion ), armIds = arms, labels = labels |