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; } 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 string; } leaf port { type uint32; } leaf tcp-only { type boolean; } leaf username { type string; } leaf password { type string; } 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 { // FIXME BUG-944 make mandatory (remove backwards compatibility) mandatory false; 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 boss-thread-group { uses config:service-ref { refine type { mandatory false; config:required-identity netty:netty-threadgroup; } } } // 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 { uses config:service-ref { refine type { mandatory false; config:required-identity netty:netty-threadgroup; } } } container event-executor { uses config:service-ref { refine type { config:required-identity netty:netty-event-executor; } } } container processing-executor { uses config:service-ref { refine type { // FIXME BUG-944 make mandatory (remove backwards compatibility) mandatory false; 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 { 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 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; } } } }