NetconfAlarmProvider alerts core about notifications given subscription.

Change-Id: I7561ba680eb8bac33a8543d6aa1bccf6732e95db
diff --git a/protocols/netconf/api/src/main/java/org/onosproject/netconf/NetconfSession.java b/protocols/netconf/api/src/main/java/org/onosproject/netconf/NetconfSession.java
index 0668422..daab1b5 100644
--- a/protocols/netconf/api/src/main/java/org/onosproject/netconf/NetconfSession.java
+++ b/protocols/netconf/api/src/main/java/org/onosproject/netconf/NetconfSession.java
@@ -141,7 +141,41 @@
     boolean deleteConfig(String targetConfiguration) throws NetconfException;
 
     /**
-     * Locks the candidate configuration.
+     * Starts subscription to the device's notifications.
+     *
+     * @throws NetconfException when there is a problem starting the subscription
+     */
+    void startSubscription() throws NetconfException;
+
+    /**
+     * Ends subscription to the device's notifications.
+     *
+     * @throws NetconfException when there is a problem ending the subscription
+     */
+    void endSubscription() throws NetconfException;
+
+    /**
+     * Locks the specified configuration.
+     *
+     * @param configType type of configuration to be locked
+     * @return true if successful.
+     * @throws NetconfException when there is a problem in the communication process on
+     * the underlying connection
+     */
+    boolean lock(String configType) throws NetconfException;
+
+    /**
+     * Unlocks the specified configuration.
+     *
+     * @param configType type of configuration to be locked
+     * @return true if successful.
+     * @throws NetconfException when there is a problem in the communication process on
+     * the underlying connection
+     */
+    boolean unlock(String configType) throws NetconfException;
+
+    /**
+     * Locks the running configuration.
      *
      * @return true if successful.
      * @throws NetconfException when there is a problem in the communication process on
@@ -150,7 +184,7 @@
     boolean lock() throws NetconfException;
 
     /**
-     * Unlocks the candidate configuration.
+     * Unlocks the running configuration.
      *
      * @return true if successful.
      * @throws NetconfException when there is a problem in the communication process on