1 module odl-sal-netconf-connector-cfg {
3 namespace "urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf";
6 import config { prefix config; revision-date 2013-04-05; }
7 import threadpool {prefix th;}
8 import netty {prefix netty;}
9 import opendaylight-md-sal-dom {prefix dom;}
10 import opendaylight-md-sal-binding {prefix md-sal-binding; revision-date 2013-10-28;}
11 import odl-netconf-cfg { prefix cfg-net; revision-date 2014-04-08; }
12 import ietf-inet-types {prefix inet; revision-date "2013-07-15";}
15 "Config definition for Netconf Connector modules";
17 revision "2015-08-03" {
19 "Non-mandatory keepalive executor";
22 revision "2013-10-28" {
27 identity sal-netconf-connector {
28 base config:module-type;
29 config:java-name-prefix NetconfConnector;
43 augment "/config:modules/config:module/config:configuration" {
45 case sal-netconf-connector {
46 when "/config:modules/config:module/config:type = 'sal-netconf-connector'";
53 type inet:port-number;
68 leaf concurrent-rpc-limit {
71 description "Limit of concurrent messages that can be send before reply messages are received.
72 If value less than 1 is provided, no limit will be enforced";
75 leaf schema-cache-directory {
78 description "The destination schema repository for yang files relative to the cache directory. This may be specified per netconf mount
79 so that the loaded yang files are stored to a distinct directory to avoid potential conflict.";
82 container yang-module-capabilities {
86 description "Whether to override or merge this list of capabilities with capabilities from device";
89 leaf-list capability {
91 description "Set a list of capabilities to override capabilities provided in device's hello message.
92 Can be used for devices that do not report any yang modules in their hello message";
96 leaf reconnect-on-changed-schema {
99 description "If true, the connector would auto disconnect/reconnect when schemas are changed in the remote device.
100 The connector subscribes (right after connect) to base netconf notifications and listens for netconf-capability-change notification";
103 container dom-registry {
104 uses config:service-ref {
107 config:required-identity dom:dom-broker-osgi-registry;
112 container binding-registry {
113 uses config:service-ref {
116 config:required-identity md-sal-binding:binding-broker-osgi-registry;
121 container event-executor {
122 uses config:service-ref {
125 config:required-identity netty:netty-event-executor;
130 container processing-executor {
131 uses config:service-ref {
134 config:required-identity th:threadpool;
138 description "Makes up for flaws in netty threading design";
141 container client-dispatcher {
142 uses config:service-ref {
145 config:required-identity cfg-net:netconf-client-dispatcher;
150 leaf connection-timeout-millis {
151 description "Specifies timeout in milliseconds after which connection must be established.";
156 leaf default-request-timeout-millis {
157 description "Timeout for blocking operations within transactions.";
162 leaf max-connection-attempts {
163 description "Maximum number of connection retries. Non positive value or null is interpreted as infinity.";
165 default 0; // retry forever
168 leaf between-attempts-timeout-millis {
169 description "Initial timeout in milliseconds to wait between connection attempts. Will be multiplied by sleep-factor with every additional attempt";
181 // Keepalive configuration
182 leaf keepalive-delay {
185 description "Netconf connector sends keepalive RPCs while the session is idle, this delay specifies the delay between keepalive RPC in seconds
186 If a value less than 1 is provided, no keepalives will be sent";
189 container keepalive-executor {
190 uses config:service-ref {
193 config:required-identity th:scheduled-threadpool;
200 description "Dedicated solely to keepalive execution";
203 container yang-library {
204 leaf yang-library-url {
207 description "Yang library to be plugged as additional source provider into the shared schema repository";
210 // credentials for basic http authentication for get request for yanglib data