From e5ade636d74e8f8a00cee68b8cb4820274861295 Mon Sep 17 00:00:00 2001 From: Ed Warnicke Date: Wed, 15 May 2013 10:55:16 -0500 Subject: [PATCH] Replace EqualsBuilder and HashCodeBuilder in transient member case. This partially addresses bug 20, and provides the example of the case where we have transient member. I'm breaking it out so that the transient member case can be reviewed simply. Change-Id: Ic05c3d6daa7e9412e195578336ed95a5d71671d8 Signed-off-by: Ed Warnicke --- .../staticrouting/StaticRouteConfig.java | 34 ++++++++++++++++--- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/opendaylight/forwarding/staticrouting/src/main/java/org/opendaylight/controller/forwarding/staticrouting/StaticRouteConfig.java b/opendaylight/forwarding/staticrouting/src/main/java/org/opendaylight/controller/forwarding/staticrouting/StaticRouteConfig.java index 706c29e9cb..262c0170db 100644 --- a/opendaylight/forwarding/staticrouting/src/main/java/org/opendaylight/controller/forwarding/staticrouting/StaticRouteConfig.java +++ b/opendaylight/forwarding/staticrouting/src/main/java/org/opendaylight/controller/forwarding/staticrouting/StaticRouteConfig.java @@ -18,8 +18,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.apache.commons.lang3.builder.EqualsBuilder; -import org.apache.commons.lang3.builder.HashCodeBuilder; import org.opendaylight.controller.sal.utils.GUIField; import org.opendaylight.controller.sal.utils.Status; import org.opendaylight.controller.sal.utils.StatusCode; @@ -328,12 +326,40 @@ public class StaticRouteConfig implements Serializable { @Override public int hashCode() { - return HashCodeBuilder.reflectionHashCode(this); + final int prime = 31; + int result = 1; + result = prime * result + ((name == null) ? 0 : name.hashCode()); + result = prime * result + ((nextHop == null) ? 0 : nextHop.hashCode()); + result = prime * result + + ((staticRoute == null) ? 0 : staticRoute.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; + StaticRouteConfig other = (StaticRouteConfig) obj; + if (name == null) { + if (other.name != null) + return false; + } else if (!name.equals(other.name)) + return false; + if (nextHop == null) { + if (other.nextHop != null) + return false; + } else if (!nextHop.equals(other.nextHop)) + return false; + if (staticRoute == null) { + if (other.staticRoute != null) + return false; + } else if (!staticRoute.equals(other.staticRoute)) + return false; + return true; } @Override -- 2.36.6