[ONOS-3537] Initial implementation of ControlMessageManager

- Add skeletal code of ControlMessageStore
- Add initial implementation of ControlMessageManager

Change-Id: I17161ce18b67e8f35ea9b80832f3732a55de323b
diff --git a/apps/cpman/api/src/main/java/org/onosproject/cpman/message/ControlMessageEvent.java b/apps/cpman/api/src/main/java/org/onosproject/cpman/message/ControlMessageEvent.java
index b2412b7..83858be 100644
--- a/apps/cpman/api/src/main/java/org/onosproject/cpman/message/ControlMessageEvent.java
+++ b/apps/cpman/api/src/main/java/org/onosproject/cpman/message/ControlMessageEvent.java
@@ -18,13 +18,15 @@
 import org.onosproject.event.AbstractEvent;
 import org.onosproject.cpman.ControlMessage;
 
+import java.util.Collection;
+
 import static com.google.common.base.MoreObjects.toStringHelper;
 
 /**
  * Describes control message event.
  */
 public class ControlMessageEvent
-        extends AbstractEvent<ControlMessageEvent.Type, ControlMessage> {
+        extends AbstractEvent<ControlMessageEvent.Type, Collection<ControlMessage>> {
 
     /**
      * Type of control message events.
@@ -39,11 +41,11 @@
     /**
      * Creates an event of given type and the current time.
      *
-     * @param type  control message event type
-     * @param controlMessage event control message subject
+     * @param type control message event type
+     * @param controlMessages event control message subject
      */
-    public ControlMessageEvent(Type type, ControlMessage controlMessage) {
-        super(type, controlMessage);
+    public ControlMessageEvent(Type type, Collection<ControlMessage> controlMessages) {
+        super(type, controlMessages);
     }
 
     @Override