Topology events related modifications:
 * Added new class TopologyEvent which encapsulates one of the following
   events: Switch event, Port event, Link event, Device event
* Added getID() method  to the new TopologyEvent class, and to each
  of the concrete topology related events.
* Added default constructors, because they are needed for Kryo-related
  deserialization
* Added Kryo registration for the new classes.

Change-Id: I61233b3176a7124bdf9e906da9f5efdc663b3003
diff --git a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/SwitchEvent.java b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/SwitchEvent.java
index 58532ae..dce0725 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/SwitchEvent.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/SwitchEvent.java
@@ -15,6 +15,13 @@
 
     private List<PortEvent> ports;
 
+    /**
+     * Default constructor.
+     */
+    public SwitchEvent() {
+	dpid = null;
+    }
+
     public SwitchEvent(Long dpid) {
 	this(dpid, new ArrayList<PortEvent>());
     }
@@ -51,4 +58,7 @@
 		.array();
     }
 
+    public byte[] getID() {
+	return getSwitchID(dpid);
+    }
 }