ONOS-1846 Added new class TopologyBatchOperation that can be used to
represent mixed sequence of topology event operations.

Added Kryo serialization unit test for the new class.

Also, added methods equals(), hashCode() and toString() to
classes BatchOperation and BatchOperationEntry.

Change-Id: I8c91499c95a48ba68ca6ff99c0ec613c951dd648
diff --git a/src/main/java/net/onrc/onos/core/util/serializers/KryoFactory.java b/src/main/java/net/onrc/onos/core/util/serializers/KryoFactory.java
index 4ab832e..679e7f9 100644
--- a/src/main/java/net/onrc/onos/core/util/serializers/KryoFactory.java
+++ b/src/main/java/net/onrc/onos/core/util/serializers/KryoFactory.java
@@ -11,6 +11,7 @@
 
 import net.floodlightcontroller.core.IFloodlightProviderService.Role;
 import net.floodlightcontroller.util.MACAddress;
+import net.onrc.onos.api.batchoperation.BatchOperationEntry;
 import net.onrc.onos.apps.proxyarp.ArpCacheNotification;
 import net.onrc.onos.apps.proxyarp.ArpReplyNotification;
 import net.onrc.onos.core.hostmanager.Host;
@@ -33,6 +34,7 @@
 import net.onrc.onos.core.topology.MastershipEvent;
 import net.onrc.onos.core.topology.PortEvent;
 import net.onrc.onos.core.topology.SwitchEvent;
+import net.onrc.onos.core.topology.TopologyBatchOperation;
 import net.onrc.onos.core.topology.TopologyElement;
 import net.onrc.onos.core.topology.TopologyEvent;
 import net.onrc.onos.core.util.CallerId;
@@ -213,6 +215,8 @@
         kryo.register(PortEvent.class);
         kryo.register(Role.class);
         kryo.register(SwitchEvent.class);
+        kryo.register(TopologyBatchOperation.class);
+        kryo.register(TopologyBatchOperation.Operator.class);
         kryo.register(TopologyElement.class);
         kryo.register(TopologyEvent.class);
 
@@ -231,6 +235,9 @@
         kryo.register(IntentStateList.class);
         kryo.register(HashMap.class);
 
+        // New intent-related classes
+        kryo.register(BatchOperationEntry.class);
+
         // Host-related classes
         kryo.register(HashSet.class);
         kryo.register(Host.class);