X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fsal%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Freader%2FNodeTableStatistics.java;h=e4c3961a140da41ff0078c893fe198677c2353b7;hp=3ccf8f59297701c0848bade6a9ef0a404a6ce6a0;hb=d046ec09656aa39bc26b6e3d6b01ca52cfa22af2;hpb=cb84401ff36666443d7659f49713fff3c423cb26 diff --git a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeTableStatistics.java b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeTableStatistics.java index 3ccf8f5929..e4c3961a14 100644 --- a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeTableStatistics.java +++ b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeTableStatistics.java @@ -7,6 +7,8 @@ */ package org.opendaylight.controller.sal.reader; +import java.io.Serializable; + import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; @@ -17,12 +19,14 @@ import org.opendaylight.controller.sal.core.NodeTable; /** * @author Aditya Prakash Vaja * Represents the Table statistics for the node - * + * */ @XmlRootElement @XmlAccessorType(XmlAccessType.NONE) -public class NodeTableStatistics { +public class NodeTableStatistics implements Serializable { + private static final long serialVersionUID = 1L; + @XmlElement private NodeTable nodeTable; @XmlElement @@ -33,7 +37,63 @@ public class NodeTableStatistics { private long lookupCount; @XmlElement private long matchedCount; + @XmlElement + private int maximumEntries; + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + activeCount; + result = prime * result + (int) (lookupCount ^ (lookupCount >>> 32)); + result = prime * result + (int) (matchedCount ^ (matchedCount >>> 32)); + result = prime * result + maximumEntries; + result = prime * result + ((name == null) ? 0 : name.hashCode()); + result = prime * result + ((nodeTable == null) ? 0 : nodeTable.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (!(obj instanceof NodeTableStatistics)) { + return false; + } + NodeTableStatistics other = (NodeTableStatistics) obj; + if (activeCount != other.activeCount) { + return false; + } + if (lookupCount != other.lookupCount) { + return false; + } + if (matchedCount != other.matchedCount) { + return false; + } + if (maximumEntries != other.maximumEntries) { + return false; + } + if (name == null) { + if (other.name != null) { + return false; + } + } else if (!name.equals(other.name)) { + return false; + } + if (nodeTable == null) { + if (other.nodeTable != null) { + return false; + } + } else if (!nodeTable.equals(other.nodeTable)) { + return false; + } + return true; + } //To Satisfy JAXB public NodeTableStatistics() { @@ -110,11 +170,26 @@ public class NodeTableStatistics { this.matchedCount = matchedCount; } + /** + * @return the maximumEntries + */ + public int getMaximumEntries() { + return maximumEntries; + } + + /** + * @param maximumEntries the maximumEntries to set + */ + public void setMaximumEntries(int maximumEntries) { + this.maximumEntries = maximumEntries; + } + @Override public String toString() { return "NodeTableStats[tableId = " + nodeTable + ", activeCount = " + activeCount + ", lookupCount = " + lookupCount - + ", matchedCount = " + matchedCount + "]"; + + ", matchedCount = " + matchedCount + + ", maximumEntries = " + maximumEntries + "]"; } }