X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fswitchmanager%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fswitchmanager%2FSwitch.java;h=e0c120a05f50644c2b46da25304cac407c56e234;hb=33ea0032f0837333a9181dd7556faa3266155080;hp=6ba78deaded8b817ee4fc382dc8560f1d3a74d10;hpb=9ff610f03e7fe11a5c9e40405cf24dd3e3af8a89;p=controller.git diff --git a/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Switch.java b/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Switch.java index 6ba78deade..e0c120a05f 100644 --- a/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Switch.java +++ b/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Switch.java @@ -16,9 +16,9 @@ import java.util.HashSet; import java.util.List; import java.util.Set; -import org.apache.commons.lang3.builder.ReflectionToStringBuilder; import org.opendaylight.controller.sal.core.Node; import org.opendaylight.controller.sal.core.NodeConnector; +import org.opendaylight.controller.sal.utils.HexEncode; /** * The class describes switch related information including L2 address, ports, @@ -28,7 +28,7 @@ public class Switch implements Serializable { private static final long serialVersionUID = 1L; private byte[] dataLayerAddress; private Set nodeConnectors; - private List spanPorts; + private final List spanPorts; private Node node; /* @@ -44,7 +44,7 @@ public class Switch implements Serializable { this.node = node; this.nodeConnectors = new HashSet(); this.spanPorts = new ArrayList(2); - this.dataLayerAddress = deriveMacAddress(); + this.dataLayerAddress = null; } /** @@ -66,7 +66,7 @@ public class Switch implements Serializable { * @return the nodeConnectors */ public Set getNodeConnectors() { - return nodeConnectors; + return new HashSet(nodeConnectors); } /** @@ -87,7 +87,7 @@ public class Switch implements Serializable { } public List getSpanPorts() { - return spanPorts; + return new ArrayList(this.spanPorts); } public Node getNode() { @@ -98,18 +98,6 @@ public class Switch implements Serializable { this.node = node; } - private byte[] deriveMacAddress() { - long dpid = (Long) this.node.getID(); - byte[] mac = new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; - - for (short i = 0; i < 6; i++) { - mac[5 - i] = (byte) dpid; - dpid >>= 8; - } - - return mac; - } - public void addSpanPorts(List portList) { for (NodeConnector port : portList) { spanPorts.add(port); @@ -137,35 +125,47 @@ public class Switch implements Serializable { @Override public boolean equals(Object obj) { - if (this == obj) + if (this == obj) { return true; - if (obj == null) + } + if (obj == null) { return false; - if (getClass() != obj.getClass()) + } + if (getClass() != obj.getClass()) { return false; + } Switch other = (Switch) obj; - if (!Arrays.equals(dataLayerAddress, other.dataLayerAddress)) + if (!Arrays.equals(dataLayerAddress, other.dataLayerAddress)) { return false; + } if (node == null) { - if (other.node != null) + if (other.node != null) { return false; - } else if (!node.equals(other.node)) + } + } else if (!node.equals(other.node)) { return false; + } if (nodeConnectors == null) { - if (other.nodeConnectors != null) + if (other.nodeConnectors != null) { return false; - } else if (!nodeConnectors.equals(other.nodeConnectors)) + } + } else if (!nodeConnectors.equals(other.nodeConnectors)) { return false; + } if (spanPorts == null) { - if (other.spanPorts != null) + if (other.spanPorts != null) { return false; - } else if (!spanPorts.equals(other.spanPorts)) + } + } else if (!spanPorts.equals(other.spanPorts)) { return false; + } return true; } @Override public String toString() { - return "Switch[" + ReflectionToStringBuilder.toString(this) + "]"; + return "Switch [dataLayerAddress=" + HexEncode.bytesToHexStringFormat(dataLayerAddress) + + ", nodeConnectors=" + nodeConnectors + ", spanPorts=" + + spanPorts + ", node=" + node + "]"; } }