diff --git a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/LinkEvent.java b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/LinkEvent.java
index d12e99c..361c298 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/LinkEvent.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/LinkEvent.java
@@ -50,15 +50,20 @@
 
     public static final int LINKID_BYTES = 2 + PortEvent.PORTID_BYTES * 2;
 
-    public static byte[] getLinkID(Long src_dpid, Long src_port_no,
+    public static ByteBuffer getLinkID(Long src_dpid, Long src_port_no,
 	    Long dst_dpid, Long dst_port_no) {
 	return ByteBuffer.allocate(LinkEvent.LINKID_BYTES).putChar('L')
 		.put(PortEvent.getPortID(src_dpid, src_port_no))
-		.put(PortEvent.getPortID(dst_dpid, dst_port_no)).array();
+		.put(PortEvent.getPortID(dst_dpid, dst_port_no));
     }
 
     public byte[] getID() {
 	return getLinkID(src.getDpid(), src.getNumber(),
+		dst.getDpid(), dst.getNumber()).array();
+    }
+
+    public ByteBuffer getIDasByteBuffer() {
+	return getLinkID(src.getDpid(), src.getNumber(),
 		dst.getDpid(), dst.getNumber());
     }
 
