1 module opendaylight-sal-dom-broker-impl {
3 namespace "urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:impl";
6 import config { prefix config; revision-date 2013-04-05; }
7 import ietf-yang-types { prefix yang; }
8 import opendaylight-md-sal-dom {prefix sal;}
9 import opendaylight-md-sal-common {prefix common;}
10 import opendaylight-config-dom-datastore {prefix config-dom-store-spi;}
11 import opendaylight-operational-dom-datastore {prefix operational-dom-store-spi;}
12 import rpc-context { prefix rpcx; revision-date 2013-06-17; }
15 "Service definition for Binding Aware MD-SAL.
16 Note: The dom-inmemory-data-broker utilizes configurable config-dom-datastore
17 and operation-dom-datastore. If configuration is not done for this stores
18 then it defaults to InMemoryDOMDataStore";
20 revision "2013-10-28" {
25 identity dom-broker-impl {
26 base config:module-type;
27 config:provided-service sal:dom-broker-osgi-registry;
28 config:java-name-prefix DomBrokerImpl;
32 identity dom-inmemory-data-broker {
33 base config:module-type;
34 config:provided-service sal:dom-async-data-broker;
37 identity schema-service-singleton {
38 base config:module-type;
39 config:provided-service sal:schema-service;
40 config:java-name-prefix SchemaServiceImplSingleton;
43 augment "/config:modules/config:module/config:configuration" {
44 case dom-broker-impl {
45 when "/config:modules/config:module/config:type = 'dom-broker-impl'";
46 container data-store {
47 uses config:service-ref {
50 config:required-identity sal:dom-data-store;
55 container async-data-broker {
56 uses config:service-ref {
59 config:required-identity sal:dom-async-data-broker;
64 container root-schema-service {
65 uses config:service-ref {
68 config:required-identity sal:schema-service;
75 grouping dom-broker-config {
76 container schema-service {
77 uses config:service-ref {
80 config:required-identity sal:schema-service;
85 container config-data-store {
86 uses config:service-ref {
89 config:required-identity config-dom-store-spi:config-dom-datastore;
94 container operational-data-store {
95 uses config:service-ref {
98 config:required-identity operational-dom-store-spi:operational-dom-datastore;
103 leaf max-data-broker-future-callback-queue-size {
106 description "The maximum queue size for the data broker's commit future callback executor.";
109 leaf max-data-broker-future-callback-pool-size {
112 description "The maximum thread pool size for the data broker's commit future callback executor.";
115 leaf max-data-broker-commit-queue-size {
118 description "The maximum queue size for the data broker's commit executor.";
122 grouping dom-broker-operational {
127 leaf average-commit {
132 leaf longest-commit-duration {
137 leaf longest-commit-timestamp {
138 type yang:date-and-time;
141 leaf shortest-commit-duration {
146 leaf shortest-commit-timestamp {
147 type yang:date-and-time;
150 rpcx:rpc-context-instance dom-broker-rpc-ctx;
153 identity dom-broker-rpc-ctx;
155 rpc reset-statistics {
157 "JMX call to clear the toasts-made counter.";
160 uses rpcx:rpc-context-ref {
161 refine context-instance {
162 rpcx:rpc-context-instance dom-broker-rpc-ctx;
168 augment "/config:modules/config:module/config:configuration" {
169 case dom-inmemory-data-broker {
170 when "/config:modules/config:module/config:type = 'dom-inmemory-data-broker'";
172 uses dom-broker-config;
176 augment "/config:modules/config:module/config:state" {
177 case dom-inmemory-data-broker {
178 when "/config:modules/config:module/config:type = 'dom-inmemory-data-broker'";
180 uses dom-broker-operational;
184 augment "/config:modules/config:module/config:state" {
185 case schema-service-singleton {
186 when "/config:modules/config:module/config:type = 'schema-service-singleton'";
190 augment "/config:modules/config:module/config:state" {
191 case dom-broker-impl {
192 when "/config:modules/config:module/config:type = 'dom-broker-impl'";
194 uses common:data-state;