### Question:
HelidonMeter extends MetricImpl implements Meter { @Override public void jsonData(JsonObjectBuilder builder, MetricID metricID) { JsonObjectBuilder myBuilder = JSON.createObjectBuilder() .add(jsonFullKey("count", metricID), getCount()) .add(jsonFullKey("meanRate", metricID), getMeanRate()) .add(jsonFullKey("oneMinRate", metricID), getOneMinuteRate()) .add(jsonFullKey("fiveMinRate", metricID), getFiveMinuteRate()) .add(jsonFullKey("fifteenMinRate", metricID), getFifteenMinuteRate()); builder.add(metricID.getName(), myBuilder); } private  HelidonMeter(String type, Metadata metadata, Meter delegate); @Override void prometheusData(StringBuilder sb, MetricID metricID, boolean withHelpType); @Override String prometheusValue(); @Override void jsonData(JsonObjectBuilder builder, MetricID metricID); @Override void mark(); @Override void mark(long n); @Override long getCount(); @Override double getFifteenMinuteRate(); @Override double getFiveMinuteRate(); @Override double getMeanRate(); @Override double getOneMinuteRate(); @Override boolean equals(Object o); @Override int hashCode();  }### Answer:
@Test void testJson() { JsonObjectBuilder builder = Json.createObjectBuilder(); meter.jsonData(builder, new MetricID("requests")); JsonObject result = builder.build(); JsonObject metricData = result.getJsonObject("requests"); assertThat(metricData, notNullValue()); assertThat(metricData.getInt("count"), is(1000)); assertThat(metricData.getJsonNumber("meanRate").doubleValue(), closeTo(100, 0.1)); assertThat(metricData.getJsonNumber("oneMinRate").doubleValue(), closeTo(100, 0.1)); assertThat(metricData.getJsonNumber("fiveMinRate").doubleValue(), closeTo(100, 0.1)); assertThat(metricData.getJsonNumber("fifteenMinRate").doubleValue(), closeTo(100, 0.1)); }