aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorvlad <vlad@driver.xyz>2017-11-03 16:58:52 -0700
committervlad <vlad@driver.xyz>2017-11-03 16:58:52 -0700
commite06c6259b164366c33456753d4655d6fe680e3f5 (patch)
tree5538048a2e2aea554c068b9fc3a9b0b5772bfc1a /src
parent6402a866735c463d5794bb8461c498fa5199b819 (diff)
downloadrest-query-e06c6259b164366c33456753d4655d6fe680e3f5.tar.gz
rest-query-e06c6259b164366c33456753d4655d6fe680e3f5.tar.bz2
rest-query-e06c6259b164366c33456753d4655d6fe680e3f5.zip
Trying to read ids from JSONv0.13.4
Diffstat (limited to 'src')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/arm.scala2
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion.scala6
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/documentissue.scala4
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm.scala6
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/extracteddata.scala5
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/patientissue.scala2
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/record.scala6
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/recordissue.scala4
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm.scala2
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/trialissue.scala2
10 files changed, 30 insertions, 9 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/arm.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/arm.scala
index 0b54309..69029b6 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/arm.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/arm.scala
@@ -31,7 +31,7 @@ object arm {
override def read(json: JsValue): Arm = json.asJsObject.getFields("trialId", "name") match {
case Seq(trialId, name) =>
Arm(
- id = LongId(0),
+ id = json.asJsObject.fields.get("id").flatMap(_.convertTo[Option[LongId[Arm]]]).getOrElse(LongId(0)),
name = name.convertTo[String],
trialId = trialId.convertTo[StringId[Trial]],
originalName = name.convertTo[String]
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion.scala
index d7acfd4..c4e89f0 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/criterion.scala
@@ -119,6 +119,10 @@ object criterion {
override def read(json: JsValue): RichCriterion = json match {
case JsObject(fields) =>
+ val id = fields
+ .get("id")
+ .flatMap(_.convertTo[Option[LongId[Criterion]]])
+
val trialId = fields
.get("trialId")
.map(_.convertTo[StringId[Trial]])
@@ -153,7 +157,7 @@ object criterion {
RichCriterion(
criterion = Criterion(
- id = LongId(0),
+ id = id.getOrElse(LongId(0)),
trialId = trialId,
text = text,
isCompound = isCompound,
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 dbf544e..d17a45c 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/documentissue.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/documentissue.scala
@@ -48,10 +48,12 @@ object documentissue {
.map(_.convertTo[String])
.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])
+
DocumentIssue(
- id = LongId(0),
+ id = id.getOrElse(LongId(0)),
userId = userId,
documentId = documentId,
lastUpdate = LocalDateTime.MIN,
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm.scala
index f31e6bd..b605566 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm.scala
@@ -39,6 +39,10 @@ object eligibilityarm {
override def read(json: JsValue): EligibilityArmWithDiseases = {
json match {
case JsObject(fields) =>
+ val id = fields
+ .get("id")
+ .flatMap(_.convertTo[Option[LongId[EligibilityArm]]])
+
val name = fields
.get("name")
.map(_.convertTo[String])
@@ -55,7 +59,7 @@ object eligibilityarm {
.getOrElse(deserializationErrorFieldMessage("diseases", json))
val eligibilityArm = EligibilityArm(
- id = LongId(0),
+ id = id.getOrElse(LongId(0)),
name = name,
trialId = trialId,
originalName = name
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/extracteddata.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/extracteddata.scala
index c9ac55b..232bb39 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/extracteddata.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/extracteddata.scala
@@ -110,6 +110,10 @@ object extracteddata {
override def read(json: JsValue): RichExtractedData = json match {
case JsObject(fields) =>
+ val id = fields
+ .get("id")
+ .flatMap(_.convertTo[Option[LongId[ExtractedData]]])
+
val documentId = fields
.get("documentId")
.map(_.convertTo[LongId[Document]])
@@ -135,6 +139,7 @@ object extracteddata {
.map(l => applyLabelsForExtractedData(l, LongId(0)))
val extractedData = ExtractedData(
+ id = id.getOrElse(LongId(0L)),
documentId = documentId,
keywordId = keywordId,
evidenceText = evidence,
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/patientissue.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/patientissue.scala
index 0ee4c6c..ed05325 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/patientissue.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/patientissue.scala
@@ -30,7 +30,7 @@ object patientissue {
json.asJsObject.getFields("text") match {
case Seq(text) =>
PatientIssue(
- id = LongId(0),
+ id = json.asJsObject.fields.get("id").flatMap(_.convertTo[Option[LongId[PatientIssue]]]).getOrElse(LongId(0)),
userId = userId,
patientId = patientId,
lastUpdate = LocalDateTime.MIN,
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/record.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/record.scala
index 083796b..cbe4951 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/record.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/record.scala
@@ -164,6 +164,10 @@ object record {
override def read(json: JsValue): MedicalRecord = json match {
case JsObject(fields) =>
+ val id = fields
+ .get("id")
+ .flatMap(_.convertTo[Option[LongId[MedicalRecord]]])
+
val disease = fields
.get("disease")
.map(_.convertTo[String])
@@ -180,7 +184,7 @@ object record {
.getOrElse(deserializationError(s"MedicalRecord json object does not contain `requestId` field: $json"))
MedicalRecord(
- id = LongId(0),
+ id = id.getOrElse(LongId(0)),
status = MedicalRecord.Status.New,
previousStatus = None,
assignee = None,
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/recordissue.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/recordissue.scala
index 976a852..e7f2f65 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/recordissue.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/recordissue.scala
@@ -48,10 +48,12 @@ object recordissue {
.map(_.convertTo[String])
.getOrElse(deserializationError(s"MedicalRecordIssue json object does not contain `text` field: $json"))
+ val id = fields.get("id").flatMap(_.convertTo[Option[LongId[MedicalRecordIssue]]]).getOrElse(LongId(0))
val startPage = fields.get("startPage").map(_.convertTo[Double])
val endPage = fields.get("endPage").map(_.convertTo[Double])
+
MedicalRecordIssue(
- id = LongId(0),
+ id = id,
userId = userId,
recordId = recordId,
lastUpdate = LocalDateTime.MIN,
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm.scala
index 7867cd6..60d6521 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm.scala
@@ -31,7 +31,7 @@ object slotarm {
override def read(json: JsValue): SlotArm = json.asJsObject.getFields("trialId", "name") match {
case Seq(trialId, name) =>
SlotArm(
- id = LongId(0),
+ id = json.asJsObject.fields.get("id").flatMap(_.convertTo[Option[LongId[SlotArm]]]).getOrElse(LongId(0)),
name = name.convertTo[String],
trialId = trialId.convertTo[StringId[Trial]],
originalName = name.convertTo[String]
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/trialissue.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/trialissue.scala
index bb431fe..f9bb0b6 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/trialissue.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/trialissue.scala
@@ -30,7 +30,7 @@ object trialissue {
json.asJsObject.getFields("text", "evidence", "meta") match {
case Seq(text, evidence, meta) =>
TrialIssue(
- id = LongId(0),
+ id = json.asJsObject.fields.get("id").flatMap(_.convertTo[Option[LongId[TrialIssue]]]).getOrElse(LongId(0)),
userId = userId,
trialId = trialId,
lastUpdate = LocalDateTime.MIN,