Camelize the name of metric type for REST API
Change-Id: Ib44be594e4021ed36e5069ec0bce8c17dd044706
diff --git a/apps/cpman/app/src/main/java/org/onosproject/cpman/rest/ControlMetricsWebResource.java b/apps/cpman/app/src/main/java/org/onosproject/cpman/rest/ControlMetricsWebResource.java
index 12e1083..8fb899d 100644
--- a/apps/cpman/app/src/main/java/org/onosproject/cpman/rest/ControlMetricsWebResource.java
+++ b/apps/cpman/app/src/main/java/org/onosproject/cpman/rest/ControlMetricsWebResource.java
@@ -17,6 +17,7 @@
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
+import org.apache.commons.lang3.StringUtils;
import org.onosproject.cluster.ClusterService;
import org.onosproject.cluster.NodeId;
import org.onosproject.cpman.ControlLoad;
@@ -249,7 +250,7 @@
ObjectNode metricNode = mapper().createObjectNode();
ControlLoad load = service.getLocalLoad(type, Optional.ofNullable(null));
if (load != null) {
- metricNode.set(type.toString().toLowerCase(), codec(ControlLoad.class)
+ metricNode.set(toCamelCase(type.toString(), true), codec(ControlLoad.class)
.encode(service.getLocalLoad(type, Optional.ofNullable(null)), this));
metricsNode.add(metricNode);
}
@@ -259,7 +260,7 @@
ObjectNode metricNode = mapper().createObjectNode();
ControlLoad load = service.getLocalLoad(type, Optional.of(did));
if (load != null) {
- metricNode.set(type.toString().toLowerCase(),
+ metricNode.set(toCamelCase(type.toString(), true),
codec(ControlLoad.class).encode(load, this));
metricsNode.add(metricNode);
}
@@ -269,7 +270,7 @@
ObjectNode metricNode = mapper().createObjectNode();
ControlLoad load = service.getLocalLoad(type, name);
if (load != null) {
- metricNode.set(type.toString().toLowerCase(),
+ metricNode.set(toCamelCase(type.toString(), true),
codec(ControlLoad.class).encode(load, this));
metricsNode.add(metricNode);
}
@@ -278,4 +279,12 @@
return metricsNode;
}
+
+ private String toCamelCase(String value, boolean startWithLowerCase) {
+ String[] strings = StringUtils.split(value.toLowerCase(), "_");
+ for (int i = startWithLowerCase ? 1 : 0; i < strings.length; i++) {
+ strings[i] = StringUtils.capitalize(strings[i]);
+ }
+ return StringUtils.join(strings);
+ }
}