+++ /dev/null
-module odl-sal-netconf-connector-cfg {
- yang-version 1;
- 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 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.";
-
- revision "2013-10-28" {
- description
- "Initial revision";
- }
-
- identity sal-netconf-connector {
- base config:module-type;
- config:java-name-prefix NetconfConnector;
- }
-
- grouping server {
- leaf address {
- type string;
- }
-
- leaf port {
- type uint32;
- }
- }
-
- augment "/config:modules/config:module/config:configuration" {
- case sal-netconf-connector {
- when "/config:modules/config:module/config:type = 'sal-netconf-connector'";
-
- leaf address {
- type inet:host;
- }
-
- leaf port {
- type inet:port-number;
- }
-
- leaf tcp-only {
- type boolean;
- }
-
- leaf username {
- type string;
- }
-
- leaf password {
- 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";
- }
- }
-
- 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 {
- mandatory true;
- config:required-identity dom:dom-broker-osgi-registry;
- }
- }
- }
-
- container binding-registry {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity md-sal-binding:binding-broker-osgi-registry;
- }
- }
- }
-
- container event-executor {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity netty:netty-event-executor;
- }
- }
- }
-
- container processing-executor {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity th:threadpool;
- }
- }
-
- description "Makes up for flaws in netty threading design";
- }
-
- container client-dispatcher {
- uses config:service-ref {
- refine type {
- mandatory false;
- config:required-identity cfg-net:netconf-client-dispatcher;
- }
- }
- }
-
- leaf connection-timeout-millis {
- description "Specifies timeout in milliseconds after which connection must be established.";
- type uint32;
- 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;
- default 0; // retry forever
- }
-
- leaf between-attempts-timeout-millis {
- description "Initial timeout in milliseconds to wait between connection attempts. Will be multiplied by sleep-factor with every additional attempt";
- type uint16;
- default 2000;
- }
-
- leaf sleep-factor {
- type decimal64 {
- fraction-digits 1;
- }
- 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