def writeGraphDefMetadata()

in atlas-chart/src/main/scala/com/netflix/atlas/chart/JsonCodec.scala [124:172]


  def writeGraphDefMetadata(gen: JsonGenerator, config: GraphDef): Unit = {
    gen.writeStartObject()
    gen.writeStringField("type", "graph-metadata")
    gen.writeNumberField("startTime", config.startTime.toEpochMilli)
    gen.writeNumberField("endTime", config.endTime.toEpochMilli)
    gen.writeArrayFieldStart("timezones")
    config.timezones.foreach { tz =>
      gen.writeString(tz.getId)
    }
    gen.writeEndArray()
    gen.writeNumberField("step", config.step)

    gen.writeNumberField("width", config.width)
    gen.writeNumberField("height", config.height)
    gen.writeStringField("layout", config.layout.name())
    gen.writeNumberField("zoom", config.zoom)

    config.title.foreach { t =>
      gen.writeStringField("title", t)
    }
    gen.writeStringField("legendType", config.legendType.name())
    gen.writeBooleanField("onlyGraph", config.onlyGraph)
    gen.writeStringField("theme", config.themeName)

    if (config.loadTime > 0) {
      gen.writeNumberField("loadTime", config.loadTime)
    }

    if (config.stats != CollectorStats.unknown) {
      gen.writeObjectFieldStart("stats")
      gen.writeNumberField("inputLines", config.stats.inputLines)
      gen.writeNumberField("inputDatapoints", config.stats.inputDatapoints)
      gen.writeNumberField("outputLines", config.stats.outputLines)
      gen.writeNumberField("outputDatapoints", config.stats.outputDatapoints)
      gen.writeEndObject()
    }

    gen.writeArrayFieldStart("warnings")
    config.warnings.foreach(gen.writeString)
    gen.writeEndArray()

    if (config.renderingHints.nonEmpty) {
      gen.writeArrayFieldStart("renderingHints")
      config.renderingHints.foreach(gen.writeString)
      gen.writeEndArray()
    }

    gen.writeEndObject()
  }