/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1 * User agent: apibuilder app.apibuilder.io/nccloud/reporting-crds/0.0.1/play_2_6 */ package de.nccloud.reporting.crds.v0.models package object json { import play.api.libs.json.{__, JsString, Writes} import play.api.libs.functional.syntax._ import play.api.libs.json.Writes._ import play.api.libs.json.Reads._ import de.nccloud.reporting.api.v0.models.json._ import de.nccloud.reporting.crds.v0.models.json._ implicit def jsonReadsReportingCrdsReportStream : play.api.libs.json.Reads[de.nccloud.reporting.crds.v0.models.ReportStream] = { for { topic <- (__ \ "topic").read[String] description <- (__ \ "description").read[String] service <- (__ \ "service").read[String] schema <- (__ \ "schema").read[Map[String, de.nccloud.reporting.api.v0.models.Field]] } yield ReportStream(topic, description, service, schema) } def jsObjectReportStream(obj: de.nccloud.reporting.crds.v0.models.ReportStream): play.api.libs.json.JsObject = { play.api.libs.json.Json.obj( "topic" -> play.api.libs.json.JsString(obj.topic), "description" -> play.api.libs.json.JsString(obj.description), "service" -> play.api.libs.json.JsString(obj.service), "schema" -> play.api.libs.json.Json.toJson(obj.schema) ) } implicit def jsonWritesReportingCrdsReportStream: play.api.libs.json.Writes[ReportStream] = { (obj: de.nccloud.reporting.crds.v0.models.ReportStream) => { de.nccloud.reporting.crds.v0.models.json.jsObjectReportStream(obj) } } }