GUI -- Fixed a defect where showTraffic was sending redundant link classes.
Change-Id: I7fd1385cc6e200f1b61930e218cc82041084e0a7
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandlerBase.java b/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandlerBase.java
index ade30ea..7ffc275 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandlerBase.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandlerBase.java
@@ -656,7 +656,7 @@
Map<String, ObjectNode> pathNodes = new HashMap<>();
for (BiLink biLink : biLinks.values()) {
boolean hasTraffic = biLink.hasTraffic;
- String tc = (biLink.classes + (hasTraffic ? " animated" : "")).trim();
+ String tc = (biLink.classes() + (hasTraffic ? " animated" : "")).trim();
ObjectNode pathNode = pathNodes.get(tc);
if (pathNode == null) {
pathNode = mapper.createObjectNode()
@@ -830,7 +830,8 @@
public Link two;
public boolean hasTraffic = false;
public long bytes = 0;
- public String classes = "";
+
+ private Set<String> classes = new HashSet<>();
BiLink(LinkKey key, Link link) {
this.key = key;
@@ -849,7 +850,13 @@
}
void addClass(String trafficClass) {
- classes = classes + " " + trafficClass;
+ classes.add(trafficClass);
+ }
+
+ String classes() {
+ StringBuilder sb = new StringBuilder();
+ classes.forEach(c -> sb.append(c).append(" "));
+ return sb.toString().trim();
}
}