X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fforwardingrulesmanager%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fforwardingrulesmanager%2FFlowEntryInstall.java;h=18255bc021aeffbc4ee5b887d98b19065dd9d08a;hp=dfe331ad5f8b0443a3c9c819130d6a5be434392a;hb=ad08b60a511324ca12e53b6185d38b52b1bf3223;hpb=f6fdaa2c3a3542264c4fa0e92e9ca14ed6f26b66 diff --git a/opendaylight/forwardingrulesmanager/api/src/main/java/org/opendaylight/controller/forwardingrulesmanager/FlowEntryInstall.java b/opendaylight/forwardingrulesmanager/api/src/main/java/org/opendaylight/controller/forwardingrulesmanager/FlowEntryInstall.java index dfe331ad5f..18255bc021 100644 --- a/opendaylight/forwardingrulesmanager/api/src/main/java/org/opendaylight/controller/forwardingrulesmanager/FlowEntryInstall.java +++ b/opendaylight/forwardingrulesmanager/api/src/main/java/org/opendaylight/controller/forwardingrulesmanager/FlowEntryInstall.java @@ -8,8 +8,6 @@ package org.opendaylight.controller.forwardingrulesmanager; -import org.apache.commons.lang3.builder.EqualsBuilder; -import org.apache.commons.lang3.builder.HashCodeBuilder; import org.opendaylight.controller.sal.core.ContainerFlow; import org.opendaylight.controller.sal.core.Node; @@ -28,6 +26,7 @@ public class FlowEntryInstall { private FlowEntry original; private ContainerFlow cFlow; private FlowEntry install; + transient private long requestId; // async request id transient private boolean deletePending; public FlowEntryInstall(FlowEntry original, ContainerFlow cFlow) { @@ -36,16 +35,45 @@ public class FlowEntryInstall { this.install = (cFlow == null) ? original.clone() : original .mergeWith(cFlow); deletePending = false; + requestId = 0; } @Override public int hashCode() { - return HashCodeBuilder.reflectionHashCode(this); + final int prime = 31; + int result = 1; + result = prime * result + ((cFlow == null) ? 0 : cFlow.hashCode()); + result = prime * result + ((install == null) ? 0 : install.hashCode()); + result = prime * result + + ((original == null) ? 0 : original.hashCode()); + return result; } @Override public boolean equals(Object obj) { - return EqualsBuilder.reflectionEquals(this, obj); + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + FlowEntryInstall other = (FlowEntryInstall) obj; + if (cFlow == null) { + if (other.cFlow != null) + return false; + } else if (!cFlow.equals(other.cFlow)) + return false; + if (install == null) { + if (other.install != null) + return false; + } else if (!install.equals(other.install)) + return false; + if (original == null) { + if (other.original != null) + return false; + } else if (!original.equals(other.original)) + return false; + return true; } public String getFlowName() { @@ -84,9 +112,17 @@ public class FlowEntryInstall { this.deletePending = true; } + public void setRequestId(long rid) { + this.requestId = rid; + } + + public long getRequestId() { + return requestId; + } + @Override public String toString() { - return "[Install = " + install + " Original: " + original + " cFlow: " - + cFlow + "]"; + return "[Install = " + install + " Original = " + original + " cFlow = " + + cFlow + " rid = " + requestId + "]"; } }