Added region-based filtering for the GUI to make sure only the relevant
events get sent to the session.
Change-Id: I649eb1b33fdf9ed4b82e29d7ba7eb3cfac5eadbb
diff --git a/core/api/src/main/java/org/onosproject/ui/model/topo/UiEdgeLink.java b/core/api/src/main/java/org/onosproject/ui/model/topo/UiEdgeLink.java
index e2dc7fd..8175568 100644
--- a/core/api/src/main/java/org/onosproject/ui/model/topo/UiEdgeLink.java
+++ b/core/api/src/main/java/org/onosproject/ui/model/topo/UiEdgeLink.java
@@ -16,14 +16,18 @@
package org.onosproject.ui.model.topo;
+import org.onosproject.net.DeviceId;
+import org.onosproject.net.HostId;
+import org.onosproject.net.PortNumber;
+
/**
* Designates a link between a device and a host; that is, an edge link.
*/
public class UiEdgeLink extends UiLink {
- private final String hostId;
- private final String edgeDevice;
- private final String edgePort;
+ private final HostId hostId;
+ private final DeviceId deviceId;
+ private final PortNumber port;
/**
* Creates a UI link.
@@ -33,25 +37,53 @@
*/
public UiEdgeLink(UiTopology topology, UiLinkId id) {
super(topology, id);
- hostId = id.idA();
- edgeDevice = id.elementB().toString();
- edgePort = id.portB().toString();
+ hostId = HostId.hostId(id.idA());
+ deviceId = (DeviceId) id.elementB();
+ port = id.portB();
}
@Override
public String endPointA() {
- return hostId;
+ return hostId.toString();
}
@Override
public String endPointB() {
- return edgeDevice;
+ return deviceId.toString();
}
// no port for end-point A
@Override
public String endPortB() {
- return edgePort;
+ return port.toString();
}
+
+ /**
+ * Returns the host identifier.
+ *
+ * @return host identifier
+ */
+ public HostId hostId() {
+ return hostId;
+ }
+
+ /**
+ * Returns the edge device identifier.
+ *
+ * @return device identifier
+ */
+ public DeviceId deviceId() {
+ return deviceId;
+ }
+
+ /**
+ * Returns the edge port number.
+ *
+ * @return edge port number
+ */
+ public PortNumber portNumber() {
+ return port;
+ }
+
}