ONOS-6259: Topo2 - Implement server-side highlighting model
- NOTE: Still WIP
- Implement doAggregation() in Traffic2Monitor.
- Plumb through call to get relevantSynthLinks().
- Create UiLinkId from LinkKey.
- Add reference to original UiLink in the UiSynthLink, (so we can use as a key later).
- TrafficLink enhancements:
-- Implement equals/hashCode
-- add a copy constructor
-- add mergeStats() method
-- add stats accessor methods
Change-Id: I693626971b3511b842e80cee7fcd2a252087597f
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/ModelCache.java b/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/ModelCache.java
index ec07673..fa426e1 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/ModelCache.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/ModelCache.java
@@ -49,8 +49,10 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
+import java.util.Map;
import java.util.Set;
import static org.onosproject.net.DefaultEdgeLink.createEdgeLink;
@@ -553,6 +555,14 @@
return uiTopology.findSynthLinks(regionId);
}
+ Map<UiLinkId, UiSynthLink> relevantSynthLinks(RegionId regionId) {
+ Map<UiLinkId, UiSynthLink> result = new HashMap<>();
+ for (UiSynthLink sl : getSynthLinks(regionId)) {
+ result.put(sl.original().id(), sl);
+ }
+ return result;
+ }
+
/**
* Refreshes the internal state.
*/
@@ -569,11 +579,6 @@
services.region().getRegions().forEach(r -> {
RegionId rid = r.id();
-
-// BasicRegionConfig rcfg = cfgService.getConfig(rid, BasicRegionConfig.class);
-// services.netcfg() ...
- // TODO: figure out how to include peer-location data in UiRegion instance
-
UiRegion region = uiTopology.findRegion(rid);
if (region != null) {
reconcileDevicesAndHostsWithRegion(allDevices, allHosts, rid, region);