aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/label/ApiCriterionLabel.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/label/ApiCriterionLabel.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/label/ApiCriterionLabel.scala54
1 files changed, 0 insertions, 54 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/label/ApiCriterionLabel.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/label/ApiCriterionLabel.scala
deleted file mode 100644
index edb0603..0000000
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/label/ApiCriterionLabel.scala
+++ /dev/null
@@ -1,54 +0,0 @@
-package xyz.driver.pdsuidomain.formats.json.label
-
-import xyz.driver.pdsuicommon.domain.LongId
-import xyz.driver.pdsuidomain.entities.{Criterion, CriterionLabel}
-import play.api.data.validation.ValidationError
-import play.api.libs.functional.syntax._
-import play.api.libs.json._
-import xyz.driver.entities.labels.{Label, LabelCategory, LabelValue}
-
-/**
- * @param value Yes|No
- */
-final case class ApiCriterionLabel(labelId: Option[Long],
- categoryId: Option[Long],
- value: Option[String],
- isDefining: Boolean) {
-
- def toDomain(criterionId: LongId[Criterion]) = CriterionLabel(
- id = LongId(0L),
- labelId = labelId.map(LongId[Label]),
- criterionId = criterionId,
- categoryId = categoryId.map(LongId[LabelCategory]),
- value = value.map {
- case "Yes" => true
- case "No" => false
- },
- isDefining = isDefining
- )
-}
-
-object ApiCriterionLabel {
-
- def fromDomain(x: CriterionLabel) = ApiCriterionLabel(
- labelId = x.labelId.map(_.id),
- categoryId = x.categoryId.map(_.id),
- value = x.value.map { x =>
- LabelValue.fromBoolean(x).toString
- },
- isDefining = x.isDefining
- )
-
- implicit val format: Format[ApiCriterionLabel] = (
- (JsPath \ "labelId").formatNullable[Long] and
- (JsPath \ "categoryId").formatNullable[Long] and
- (JsPath \ "value").formatNullable[String](
- Format(Reads
- .of[String]
- .filter(ValidationError("unknown value"))({ x =>
- x == "Yes" || x == "No"
- }),
- Writes.of[String])) and
- (JsPath \ "isDefining").format[Boolean]
- )(ApiCriterionLabel.apply, unlift(ApiCriterionLabel.unapply))
-}