|
15 | 15 | */ |
16 | 16 | package com.arpnetworking.metrics.mad.parsers; |
17 | 17 |
|
| 18 | +import com.arpnetworking.commons.builder.ThreadLocalBuilder; |
18 | 19 | import com.arpnetworking.metrics.common.parsers.Parser; |
19 | 20 | import com.arpnetworking.metrics.common.parsers.exceptions.ParsingException; |
20 | 21 | import com.arpnetworking.metrics.mad.model.DefaultMetric; |
@@ -82,23 +83,28 @@ private void processEntries( |
82 | 83 | final List<ClientV2.MetricEntry> entries, |
83 | 84 | final MetricType metricType) { |
84 | 85 | for (final ClientV2.MetricEntry metricEntry : entries) { |
85 | | - final DefaultMetric.Builder metricBuilder = new DefaultMetric.Builder() |
86 | | - .setType(metricType); |
87 | 86 | final List<Quantity> quantities = Lists.newArrayListWithExpectedSize(metricEntry.getSamplesCount()); |
88 | 87 | for (final ClientV2.Quantity quantity : metricEntry.getSamplesList()) { |
89 | | - final Quantity.Builder builder = new Quantity.Builder() |
90 | | - .setUnit(baseUnit(quantity.getUnit())); |
91 | 88 | if (quantity.getValueCase().equals(ClientV2.Quantity.ValueCase.DOUBLEVALUE)) { |
92 | | - builder.setValue(quantity.getDoubleValue()); |
| 89 | + quantities.add( |
| 90 | + ThreadLocalBuilder.build( |
| 91 | + Quantity.Builder.class, |
| 92 | + b -> b.setUnit(baseUnit(quantity.getUnit())) |
| 93 | + .setValue(quantity.getDoubleValue()))); |
93 | 94 | } else if (quantity.getValueCase().equals(ClientV2.Quantity.ValueCase.LONGVALUE)) { |
94 | | - builder.setValue(Long.valueOf(quantity.getLongValue()).doubleValue()); |
| 95 | + quantities.add( |
| 96 | + ThreadLocalBuilder.build( |
| 97 | + Quantity.Builder.class, |
| 98 | + b -> b.setUnit(baseUnit(quantity.getUnit())) |
| 99 | + .setValue((double) quantity.getLongValue()))); |
95 | 100 | } |
96 | | - |
97 | | - quantities.add(builder.build()); |
98 | 101 | } |
99 | 102 |
|
100 | | - metricBuilder.setValues(quantities); |
101 | | - metrics.put(metricEntry.getName(), metricBuilder.build()); |
| 103 | + final Metric defaultMetric = ThreadLocalBuilder.build( |
| 104 | + DefaultMetric.Builder.class, |
| 105 | + b -> b.setType(metricType) |
| 106 | + .setValues(quantities)); |
| 107 | + metrics.put(metricEntry.getName(), defaultMetric); |
102 | 108 | } |
103 | 109 | } |
104 | 110 |
|
|
0 commit comments