ISIS protocol manual merge from 1.6 due to cherry pick merge conflict
Change-Id: I6c3abf6a83ddaeba76293dc7864fcec88e9b4e7e
diff --git a/protocols/isis/api/src/main/java/org/onosproject/isis/controller/IsisController.java b/protocols/isis/api/src/main/java/org/onosproject/isis/controller/IsisController.java
index fc10019..2b4cde0 100644
--- a/protocols/isis/api/src/main/java/org/onosproject/isis/controller/IsisController.java
+++ b/protocols/isis/api/src/main/java/org/onosproject/isis/controller/IsisController.java
@@ -16,9 +16,11 @@
package org.onosproject.isis.controller;
import com.fasterxml.jackson.databind.JsonNode;
+import org.onosproject.isis.controller.topology.IsisLinkListener;
import org.onosproject.isis.controller.topology.IsisRouterListener;
import java.util.List;
+import java.util.Set;
/**
* Representation of an ISIS controller.
@@ -52,4 +54,32 @@
* @return list of process instances
*/
List<IsisProcess> allConfiguredProcesses();
+
+ /**
+ * Registers a listener for ISIS message events.
+ *
+ * @param listener the listener to notify
+ */
+ void addLinkListener(IsisLinkListener listener);
+
+ /**
+ * Unregisters a link listener.
+ *
+ * @param listener the listener to unregister
+ */
+ void removeLinkListener(IsisLinkListener listener);
+
+ /**
+ * Gets the list of listeners registered for router events.
+ *
+ * @return list of listeners
+ */
+ Set<IsisRouterListener> listener();
+
+ /**
+ * Gets the list of listeners registered for link events.
+ *
+ * @return list of listeners
+ */
+ Set<IsisLinkListener> linkListener();
}
\ No newline at end of file