X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Freader%2FNodeDescription.java;h=12ce4d69482b3f32a61b3aade2b79079aa130f6d;hb=refs%2Fchanges%2F52%2F752%2F3;hp=65efd3c29dc1dc944b6dbe52e2c629d0dd6e6ec8;hpb=59cc8f34c24d81a8890a94c11dedd4b21caa0adf;p=controller.git diff --git a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeDescription.java b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeDescription.java index 65efd3c29d..12ce4d6948 100644 --- a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeDescription.java +++ b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/reader/NodeDescription.java @@ -9,11 +9,15 @@ package org.opendaylight.controller.sal.reader; +import java.io.Serializable; + /** * Represents the network node description information */ -public class NodeDescription { +public class NodeDescription implements Serializable, Cloneable{ + private static final long serialVersionUID = 1L; + private String manufacturer; private String hardware; private String software; @@ -64,10 +68,83 @@ public class NodeDescription { this.description = description; } + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((description == null) ? 0 : description.hashCode()); + result = prime * result + ((hardware == null) ? 0 : hardware.hashCode()); + result = prime * result + ((manufacturer == null) ? 0 : manufacturer.hashCode()); + result = prime * result + ((serialNumber == null) ? 0 : serialNumber.hashCode()); + result = prime * result + ((software == null) ? 0 : software.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (!(obj instanceof NodeDescription)) { + return false; + } + NodeDescription other = (NodeDescription) obj; + if (description == null) { + if (other.description != null) { + return false; + } + } else if (!description.equals(other.description)) { + return false; + } + if (hardware == null) { + if (other.hardware != null) { + return false; + } + } else if (!hardware.equals(other.hardware)) { + return false; + } + if (manufacturer == null) { + if (other.manufacturer != null) { + return false; + } + } else if (!manufacturer.equals(other.manufacturer)) { + return false; + } + if (serialNumber == null) { + if (other.serialNumber != null) { + return false; + } + } else if (!serialNumber.equals(other.serialNumber)) { + return false; + } + if (software == null) { + if (other.software != null) { + return false; + } + } else if (!software.equals(other.software)) { + return false; + } + return true; + } + @Override public String toString() { return "HwDescription[manufacturer=" + manufacturer + ", hardware=" - + hardware + ", software=" + software + ", serialNumber=" - + serialNumber + ", description=" + description + "]"; + + hardware + ", software=" + software + ", serialNumber=" + + serialNumber + ", description=" + description + "]"; + } + @Override + public NodeDescription clone() { + NodeDescription nd = new NodeDescription(); + nd.setDescription(description); + nd.setHardware(hardware); + nd.setManufacturer(manufacturer); + nd.setSerialNumber(serialNumber); + nd.setSoftware(software); + + return nd; } }