Merge "Created Sample Feature Test Class for Base Feature Repository"
[controller.git] / opendaylight / md-sal / sal-netconf-connector / src / main / yang / odl-sal-netconf-connector-cfg.yang
index d4dad11ec3b4f70e67ede2e1ddc4f690d59e9b52..e13398b1dfd36a748bcdeb019db55b30b01c4c04 100644 (file)
@@ -3,11 +3,13 @@ module odl-sal-netconf-connector-cfg {
     namespace "urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf";
     prefix "sal-netconf";
 
-       import config { prefix config; revision-date 2013-04-05; }
-       import threadpool {prefix th;}
-       import netty {prefix netty;}
-       import opendaylight-md-sal-dom {prefix dom;}
+    import config { prefix config; revision-date 2013-04-05; }
+    import threadpool {prefix th;}
+    import netty {prefix netty;}
+    import opendaylight-md-sal-dom {prefix dom;}
+    import opendaylight-md-sal-binding {prefix md-sal-binding; revision-date 2013-10-28;}
     import odl-netconf-cfg { prefix cfg-net; revision-date 2014-04-08; }
+    import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
 
     description
         "Service definition for Binding Aware MD-SAL.";
@@ -22,7 +24,6 @@ module odl-sal-netconf-connector-cfg {
         config:java-name-prefix NetconfConnector;
     }
 
-
     grouping server {
         leaf address {
             type string;
@@ -33,17 +34,16 @@ module odl-sal-netconf-connector-cfg {
         }
     }
 
-
     augment "/config:modules/config:module/config:configuration" {
         case sal-netconf-connector {
             when "/config:modules/config:module/config:type = 'sal-netconf-connector'";
 
             leaf address {
-                type string;
+                type inet:host;
             }
 
             leaf port {
-                type uint32;
+                type inet:port-number;
             }
 
             leaf tcp-only {
@@ -58,6 +58,14 @@ module odl-sal-netconf-connector-cfg {
                 type string;
             }
 
+            container yang-module-capabilities {
+                leaf-list capability {
+                    type string;
+                    description "Set a list of capabilities to override capabilities provided in device's hello message.
+                                 Can be used for devices that do not report any yang modules in their hello message";
+                }
+            }
+
             container dom-registry {
                 uses config:service-ref {
                     refine type {
@@ -67,39 +75,35 @@ module odl-sal-netconf-connector-cfg {
                 }
             }
 
-            // FIXME BUG-944 remove backwards compatibility
-            // Deprecated, replaced by client dispatcher.
-            // This dependency will be removed in near future and all configurations of netconf-connector need to be changed to use dispatcher dependency.
-            container boss-thread-group {
+            container binding-registry {
                 uses config:service-ref {
                     refine type {
-                        mandatory false;
-                        config:required-identity netty:netty-threadgroup;
+                        mandatory true;
+                        config:required-identity md-sal-binding:binding-broker-osgi-registry;
                     }
                 }
             }
 
-            // FIXME BUG-944 remove backwards compatibility
-            // Deprecated, replaced by client dispatcher.
-            // This dependency will be removed in near future and all configurations of netconf-connector need to be changed to use dispatcher dependency.
-            container worker-thread-group {
+            container event-executor {
                 uses config:service-ref {
                     refine type {
-                        mandatory false;
-                        config:required-identity netty:netty-threadgroup;
+                        mandatory true;
+                        config:required-identity netty:netty-event-executor;
                     }
                 }
             }
 
-            container event-executor {
+            container processing-executor {
                 uses config:service-ref {
                     refine type {
-                        config:required-identity netty:netty-event-executor;
+                        mandatory true;
+                        config:required-identity th:threadpool;
                     }
                 }
+
+                description "Makes up for flaws in netty threading design";
             }
 
-            // Replaces thread group dependencies
             container client-dispatcher {
                 uses config:service-ref {
                     refine type {
@@ -122,9 +126,16 @@ module odl-sal-netconf-connector-cfg {
             }
 
             leaf between-attempts-timeout-millis {
-                description "Timeout in milliseconds to wait between connection attempts.";
+                description "Initial timeout in milliseconds to wait between connection attempts. Will be multiplied by sleep-factor with every additional attempt";
                 type uint16;
-                default 10000;
+                default 2000;
+            }
+
+            leaf sleep-factor {
+                type decimal64 {
+                    fraction-digits 1;
+                }
+                default 1.5;
             }
         }
     }