aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion/ApiNewCriterion.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion/ApiNewCriterion.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion/ApiNewCriterion.scala43
1 files changed, 0 insertions, 43 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion/ApiNewCriterion.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion/ApiNewCriterion.scala
deleted file mode 100644
index ab7641f..0000000
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion/ApiNewCriterion.scala
+++ /dev/null
@@ -1,43 +0,0 @@
-package xyz.driver.pdsuidomain.formats.json.criterion
-
-import xyz.driver.pdsuicommon.domain.{LongId, StringId}
-import xyz.driver.pdsuicommon.json.Serialization.seqJsonFormat
-import xyz.driver.pdsuidomain.entities._
-import play.api.libs.functional.syntax._
-import play.api.libs.json._
-import xyz.driver.pdsuidomain.formats.json.label.ApiCriterionLabel
-import xyz.driver.pdsuidomain.services.CriterionService.RichCriterion
-
-final case class ApiNewCriterion(meta: Option[String],
- arms: Option[Seq[Long]],
- text: Option[String],
- isCompound: Option[Boolean],
- labels: Seq[ApiCriterionLabel],
- trialId: String) {
-
- def toDomain = RichCriterion(
- criterion = Criterion(
- id = LongId(0L),
- meta = meta.getOrElse(""),
- trialId = StringId(trialId),
- isCompound = isCompound.getOrElse(false),
- text = text
- ),
- armIds = arms.getOrElse(Seq.empty).map(LongId[Arm]),
- labels = labels.map(_.toDomain(LongId(Long.MaxValue))) // A developer should specify right criterionId himself
- )
-}
-
-object ApiNewCriterion {
-
- implicit val format: Format[ApiNewCriterion] = (
- (JsPath \ "meta").formatNullable(Format(Reads { x =>
- JsSuccess(Json.stringify(x))
- }, Writes[String](Json.parse))) and
- (JsPath \ "arms").formatNullable(seqJsonFormat[Long]) and
- (JsPath \ "text").formatNullable[String] and
- (JsPath \ "isCompound").formatNullable[Boolean] and
- (JsPath \ "labels").format(seqJsonFormat[ApiCriterionLabel]) and
- (JsPath \ "trialId").format[String]
- )(ApiNewCriterion.apply, unlift(ApiNewCriterion.unapply))
-}