BUG-3335 Add keepalive mechanism to netconf-connector
[controller.git] / opendaylight / md-sal / sal-netconf-connector / src / main / yang / odl-sal-netconf-connector-cfg.yang
index e13398b1dfd36a748bcdeb019db55b30b01c4c04..799c9c89995d414b410f1aa1ad02f4a4b4756e80 100644 (file)
@@ -66,6 +66,13 @@ module odl-sal-netconf-connector-cfg {
                 }
             }
 
+            leaf reconnect-on-changed-schema {
+                type boolean;
+                default false;
+                description "If true, the connector would auto disconnect/reconnect when schemas are changed in the remote device.
+                             The connector subscribes (right after connect) to base netconf notifications and listens for netconf-capability-change notification";
+            }
+
             container dom-registry {
                 uses config:service-ref {
                     refine type {
@@ -119,6 +126,12 @@ module odl-sal-netconf-connector-cfg {
                 default 20000;
             }
 
+            leaf default-request-timeout-millis {
+                description "Timeout for blocking operations within transactions.";
+                type uint32;
+                default 60000;
+            }
+
             leaf max-connection-attempts {
                 description "Maximum number of connection retries. Non positive value or null is interpreted as infinity.";
                 type uint32;
@@ -137,6 +150,25 @@ module odl-sal-netconf-connector-cfg {
                 }
                 default 1.5;
             }
+
+            // Keepalive configuration
+            leaf keepalive-delay {
+                type uint32;
+                default 120;
+                description "Netconf connector sends keepalive RPCs while the session is idle, this delay specifies the delay between keepalive RPC in seconds
+                             If a value <1 is provided, no keepalives will be sent";
+            }
+
+            container keepalive-executor {
+                uses config:service-ref {
+                    refine type {
+                        mandatory false;
+                        config:required-identity th:scheduled-threadpool;
+                    }
+                }
+
+                description "Dedicated solely to keepalive execution";
+            }
         }
     }
 }
\ No newline at end of file