package org.opendaylight.controller.hosttracker.internal;
+import java.net.InetAddress;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import org.opendaylight.controller.hosttracker.IEntityClass;
import org.opendaylight.controller.hosttracker.SwitchPort;
import org.opendaylight.controller.hosttracker.SwitchPort.ErrorStatus;
+import org.opendaylight.controller.hosttracker.hostAware.HostNodeConnector;
import org.opendaylight.controller.sal.core.NodeConnector;
import org.opendaylight.controller.sal.utils.HexEncode;
import org.slf4j.Logger;
return true;
}
+ public HostNodeConnector toHostNodeConnector() {
+ Integer[] ipv4s = this.getIPv4Addresses();
+ try {
+ Entity e = this.entities[this.entities.length-1];
+ NodeConnector n = null;
+ if(e!=null)
+ n = e.getPort();
+ InetAddress ip = InetAddress.getByName(ipv4s[ipv4s.length - 1]
+ .toString());
+ byte[] macAddr = macLongToByte(this.getMACAddress());
+ HostNodeConnector nc = new HostNodeConnector(macAddr, ip, n,
+ (short) 0);
+ return nc;
+ } catch (Exception e) {
+ return null;
+ }
+ }
+
+ private byte[] macLongToByte(long mac) {
+ byte[] macAddr = new byte[6];
+ for (int i = 0; i < 6; i++) {
+ macAddr[5 - i] = (byte) (mac >> (8 * i));
+ }
+ return macAddr;
+ }
+
@Override
public String toString() {
StringBuilder builder = new StringBuilder();