Specialize RemoteDeviceHandler to NetconfSessionPreferences
[netconf.git] / netconf / sal-netconf-connector / src / main / java / org / opendaylight / netconf / sal / connect / api / RemoteDeviceHandler.java
index 9ab98f6428dc063c074bedf7bb6f3514bb834069..650149d7e83bc20302f9b3eaafc19c31655b8f5e 100644 (file)
@@ -10,44 +10,48 @@ package org.opendaylight.netconf.sal.connect.api;
 import org.opendaylight.mdsal.dom.api.DOMActionService;
 import org.opendaylight.mdsal.dom.api.DOMNotification;
 import org.opendaylight.mdsal.dom.api.DOMRpcService;
+import org.opendaylight.netconf.sal.connect.netconf.listener.NetconfSessionPreferences;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-
-public interface RemoteDeviceHandler<PREF> extends AutoCloseable {
+import org.opendaylight.yangtools.rfc8528.data.api.MountPointContext;
 
+public interface RemoteDeviceHandler extends AutoCloseable {
     /**
      * When device connected, init new mount point with specific schema context and DOM services.
      *
      * @param remoteSchemaContext - schema context of connected device
-     * @param netconfSessionPreferences - session of device
+     * @param sessionPreferences - session of device
      * @param deviceRpc - {@link DOMRpcService} of device
      */
-    default void onDeviceConnected(final SchemaContext remoteSchemaContext, final PREF netconfSessionPreferences,
-            final DOMRpcService deviceRpc) {
+    default void onDeviceConnected(final MountPointContext remoteSchemaContext,
+            final NetconfSessionPreferences sessionPreferences, final DOMRpcService deviceRpc) {
         // DO NOTHING
     }
 
     /**
      * When device connected, init new mount point with specific schema context and DOM services.
      *
-     * @param remoteSchemaContext - schema context of connected device
-     * @param netconfSessionPreferences - session of device
+     * @param mountContext - MountPointContext of connected device
+     * @param sessionPreferences - session of device
      * @param deviceRpc - {@link DOMRpcService} of device
      * @param deviceAction - {@link DOMActionService} of device
      */
-    default void onDeviceConnected(final SchemaContext remoteSchemaContext, final PREF netconfSessionPreferences,
+    default void onDeviceConnected(final MountPointContext mountContext,
+            final NetconfSessionPreferences sessionPreferences,
             final DOMRpcService deviceRpc, final DOMActionService deviceAction) {
         // DO NOTHING
     }
 
-    default void onDeviceReconnected(final PREF netconfSessionPreferences, final NetconfNode node) {
+    default void onDeviceReconnected(final NetconfSessionPreferences sessionPreferences, final NetconfNode node) {
         // DO NOTHING
     }
 
+    // FIXME: document this node
     void onDeviceDisconnected();
 
+    // FIXME: document this node
     void onDeviceFailed(Throwable throwable);
 
+    // FIXME: document this node
     void onNotification(DOMNotification domNotification);
 
     @Override