Override equals() and hashCode() of FlowLink
Change-Id: I639e8b72eef31ca138b10976ae0e6e19760ef2dd
diff --git a/src/main/java/net/onrc/onos/api/flowmanager/FlowLink.java b/src/main/java/net/onrc/onos/api/flowmanager/FlowLink.java
index 42b7788..2fded10 100644
--- a/src/main/java/net/onrc/onos/api/flowmanager/FlowLink.java
+++ b/src/main/java/net/onrc/onos/api/flowmanager/FlowLink.java
@@ -1,5 +1,6 @@
package net.onrc.onos.api.flowmanager;
+import com.google.common.base.Objects;
import net.onrc.onos.core.util.Dpid;
import net.onrc.onos.core.util.PortNumber;
import net.onrc.onos.core.util.SwitchPort;
@@ -99,4 +100,23 @@
public String toString() {
return srcSwitchPort + "-->" + dstSwitchPort;
}
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+
+ FlowLink that = (FlowLink) o;
+ return Objects.equal(this.srcSwitchPort, that.srcSwitchPort)
+ && Objects.equal(this.dstSwitchPort, that.dstSwitchPort);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hashCode(srcSwitchPort, dstSwitchPort);
+ }
}