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 "2010-09-24";}
15 "Service definition for Binding Aware MD-SAL.";
17 revision "2013-10-28" {
22 identity sal-netconf-connector {
23 base config:module-type;
24 config:java-name-prefix NetconfConnector;
37 augment "/config:modules/config:module/config:configuration" {
38 case sal-netconf-connector {
39 when "/config:modules/config:module/config:type = 'sal-netconf-connector'";
46 type inet:port-number;
61 leaf schema-cache-directory {
64 description "The destination schema repository for yang files relative to the cache directory. This may be specified per netconf mount
65 so that the loaded yang files are stored to a distinct directory to avoid potential conflict.";
68 container yang-module-capabilities {
69 leaf-list capability {
71 description "Set a list of capabilities to override capabilities provided in device's hello message.
72 Can be used for devices that do not report any yang modules in their hello message";
76 leaf reconnect-on-changed-schema {
79 description "If true, the connector would auto disconnect/reconnect when schemas are changed in the remote device.
80 The connector subscribes (right after connect) to base netconf notifications and listens for netconf-capability-change notification";
83 container dom-registry {
84 uses config:service-ref {
87 config:required-identity dom:dom-broker-osgi-registry;
92 container binding-registry {
93 uses config:service-ref {
96 config:required-identity md-sal-binding:binding-broker-osgi-registry;
101 container event-executor {
102 uses config:service-ref {
105 config:required-identity netty:netty-event-executor;
110 container processing-executor {
111 uses config:service-ref {
114 config:required-identity th:threadpool;
118 description "Makes up for flaws in netty threading design";
121 container client-dispatcher {
122 uses config:service-ref {
125 config:required-identity cfg-net:netconf-client-dispatcher;
130 leaf connection-timeout-millis {
131 description "Specifies timeout in milliseconds after which connection must be established.";
136 leaf default-request-timeout-millis {
137 description "Timeout for blocking operations within transactions.";
142 leaf max-connection-attempts {
143 description "Maximum number of connection retries. Non positive value or null is interpreted as infinity.";
145 default 0; // retry forever
148 leaf between-attempts-timeout-millis {
149 description "Initial timeout in milliseconds to wait between connection attempts. Will be multiplied by sleep-factor with every additional attempt";
161 // Keepalive configuration
162 leaf keepalive-delay {
165 description "Netconf connector sends keepalive RPCs while the session is idle, this delay specifies the delay between keepalive RPC in seconds
166 If a value <1 is provided, no keepalives will be sent";
169 container keepalive-executor {
170 uses config:service-ref {
173 config:required-identity th:scheduled-threadpool;
177 description "Dedicated solely to keepalive execution";