From 9432d1a9b62c66fb7a702901325248a4523706a9 Mon Sep 17 00:00:00 2001 From: hilltracer Date: Fri, 5 Aug 2022 14:31:33 +0300 Subject: [PATCH] Repairing IDoc data format --- .../coop/rchain/rabbit2rho/gentran/IdocSchemaParser.scala | 2 +- .../scala/coop/rchain/rabbit2rho/gentran/IdocTools.scala | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocSchemaParser.scala b/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocSchemaParser.scala index 7ef8f02..6180154 100644 --- a/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocSchemaParser.scala +++ b/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocSchemaParser.scala @@ -25,7 +25,7 @@ object ParseInput extends IOApp { .map(idoc2RhoList(_, schema._2, schema._1)) .compile .toList - _ = println(parsed.head) + _ = println(s"[${parsed.head.mkString(", ")}]") } yield ExitCode.Success } } diff --git a/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocTools.scala b/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocTools.scala index 8505df4..4c9767e 100644 --- a/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocTools.scala +++ b/src/main/scala/coop/rchain/rabbit2rho/gentran/IdocTools.scala @@ -58,8 +58,12 @@ object IdocTools { id2Tag: String => String ): List[String] = parseIdoc(idoc, schema, id2Tag).compile.toList - .map { case (k, v) => (k, v) } - .map(json.writeValueAsString) + .map { + case (recName, fields) => + val strFields = fields.toList.map { case (k, v) => s""""${rhoName(k)}":"$v"""" } + s"""("${rhoName(recName)}",{${strFields.mkString(", ")}})""" + } + def rhoName(name: String): String = name.replace(":", "_colon_") def idoc2RhoMap( idoc: String,