From 06a3e067871b436748d0382e4296965ecd32204a Mon Sep 17 00:00:00 2001 From: Kseniya Tomskikh Date: Thu, 14 Dec 2017 14:41:20 +0700 Subject: PDSUI-2455 'startPage' and 'endPage' must be Option --- .../xyz/driver/pdsuidomain/formats/json/documentissue.scala | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/documentissue.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/documentissue.scala index d17a45c..037a3ad 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/documentissue.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/documentissue.scala @@ -24,14 +24,14 @@ object documentissue { .map(_.convertTo[Boolean]) .getOrElse(deserializationError(s"DocumentIssue json object does not contain `archiveRequired` field: $json")) - val startPage = fields.get("startPage").map(_.convertTo[Double]) - val endPage = fields.get("endPage").map(_.convertTo[Double]) + val startPage = fields.get("startPage").map(_.convertTo[Option[Double]]) + val endPage = fields.get("endPage").map(_.convertTo[Option[Double]]) orig.copy( text = text, archiveRequired = archiveRequired, - startPage = startPage, - endPage = endPage + startPage = startPage.getOrElse(orig.startPage), + endPage = endPage.getOrElse(orig.endPage) ) case _ => deserializationError(s"Expected Json Object as partial DocumentIssue, but got $json") @@ -49,8 +49,8 @@ object documentissue { .getOrElse(deserializationError(s"DocumentIssue json object does not contain `text` field: $json")) val id = fields.get("id").map(_.convertTo[LongId[DocumentIssue]]) - val startPage = fields.get("startPage").map(_.convertTo[Double]) - val endPage = fields.get("endPage").map(_.convertTo[Double]) + val startPage = fields.get("startPage").flatMap(_.convertTo[Option[Double]]) + val endPage = fields.get("endPage").flatMap(_.convertTo[Option[Double]]) DocumentIssue( id = id.getOrElse(LongId(0)), -- cgit v1.2.3