aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
diff options
context:
space:
mode:
authorKseniya Tomskikh <ktomskih@datamonsters.co>2017-09-27 16:41:04 +0700
committerKseniya Tomskikh <ktomskih@datamonsters.co>2017-09-27 16:41:04 +0700
commit1fa90814e5930ad0bbe61ba5b082747781e1dc92 (patch)
treeae61966402b57425479bafd1d34ce680ca5cfe28 /src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
parent3a9ba980e6ce08361f6f3cdaf6ab2a401101b35c (diff)
downloadrest-query-1fa90814e5930ad0bbe61ba5b082747781e1dc92.tar.gz
rest-query-1fa90814e5930ad0bbe61ba5b082747781e1dc92.tar.bz2
rest-query-1fa90814e5930ad0bbe61ba5b082747781e1dc92.zip
PDSUI-2275 Review fixes
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala17
1 files changed, 3 insertions, 14 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
index 4bd5bad..2bf1f2b 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
@@ -123,33 +123,22 @@ object intervention {
implicit val interventionTypeFormat: JsonFormat[InterventionType] = new RootJsonFormat[InterventionType] {
override def read(json: JsValue) = json match {
case JsObject(fields) =>
- val id = fields
- .get("id")
- .map(_.convertTo[LongId[InterventionType]])
- .getOrElse(deserializationError(s"Intervention type json object does not contain `id` field: $json"))
-
val name = fields
.get("name")
.map(_.convertTo[String])
.getOrElse(deserializationError(s"Intervention type json object does not contain `name` field: $json"))
- InterventionType(id, name)
+ InterventionType.typeFromString(name)
case _ => deserializationError(s"Expected Json Object as Intervention type, but got $json")
}
- override def write(obj: InterventionType) = {
- val typeMethods = InterventionType.deliveryMethodGroups
- .getOrElse(obj.id, Set.empty[DeliveryMethod])
- .map(DeliveryMethod.methodToString)
- .toList
-
+ override def write(obj: InterventionType) =
JsObject(
"id" -> obj.id.toJson,
"name" -> obj.name.toJson,
- "deliveryMethods" -> typeMethods.toJson
+ "deliveryMethods" -> obj.deliveryMethod.map(DeliveryMethod.methodToString).toJson
)
- }
}
}