1 module opendaylight-sal-binding-broker-impl {
3 namespace "urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding:impl";
6 import config { prefix config; revision-date 2013-04-05; }
7 import opendaylight-md-sal-binding {prefix sal;}
8 import opendaylight-md-sal-dom {prefix dom;}
9 import opendaylight-md-sal-common {prefix common;}
12 "Service definition for Binding Aware MD-SAL.";
14 revision "2013-10-28" {
19 identity binding-dom-mapping-service {
20 base config:service-type;
21 config:java-class "org.opendaylight.yangtools.yang.data.impl.codec.BindingIndependentMappingService";
25 identity binding-broker-impl {
26 base config:module-type;
27 config:provided-service sal:binding-broker-osgi-registry;
28 config:provided-service sal:binding-rpc-registry;
29 config:java-name-prefix BindingBrokerImpl;
32 identity binding-data-broker {
33 base config:module-type;
34 config:provided-service sal:binding-data-broker;
35 config:provided-service sal:binding-data-consumer-broker;
36 config:java-name-prefix DataBrokerImpl;
39 identity binding-data-compatible-broker {
40 base config:module-type;
41 config:provided-service sal:binding-data-broker;
42 config:provided-service sal:binding-data-consumer-broker;
43 config:java-name-prefix ForwardedCompatibleDataBrokerImpl;
46 identity binding-rpc-broker {
47 base config:module-type;
48 config:provided-service sal:binding-rpc-registry;
49 config:java-name-prefix RpcBrokerImpl;
52 identity binding-notification-broker {
53 base config:module-type;
54 config:provided-service sal:binding-notification-service;
55 config:provided-service sal:binding-notification-subscription-service;
56 config:java-name-prefix NotificationBrokerImpl;
59 identity runtime-generated-mapping {
60 base config:module-type;
61 config:provided-service binding-dom-mapping-service;
62 config:java-name-prefix RuntimeMapping;
65 augment "/config:modules/config:module/config:configuration" {
66 case binding-broker-impl {
67 when "/config:modules/config:module/config:type = 'binding-broker-impl'";
70 container rpc-registry {
71 uses config:service-ref {
74 config:required-identity sal:binding-rpc-registry;
79 container data-broker {
80 uses config:service-ref {
83 config:required-identity sal:binding-data-broker;
88 container notification-service {
89 uses config:service-ref {
92 config:required-identity sal:binding-notification-service;
99 augment "/config:modules/config:module/config:configuration" {
100 case binding-data-broker {
101 when "/config:modules/config:module/config:type = 'binding-data-broker'";
102 container dom-broker {
103 uses config:service-ref {
106 config:required-identity dom:dom-broker-osgi-registry;
111 container mapping-service {
112 uses config:service-ref {
115 config:required-identity binding-dom-mapping-service;
122 augment "/config:modules/config:module/config:configuration" {
123 case binding-data-compatible-broker {
124 when "/config:modules/config:module/config:type = 'binding-data-compatible-broker'";
126 container dom-async-broker {
127 uses config:service-ref {
130 config:required-identity dom:dom-broker-osgi-registry;
135 container binding-mapping-service {
136 uses config:service-ref {
139 config:required-identity binding-dom-mapping-service;
147 augment "/config:modules/config:module/config:state" {
148 case runtime-generated-mapping {
149 when "/config:modules/config:module/config:type = 'runtime-generated-mapping'";
153 augment "/config:modules/config:module/config:state" {
154 case binding-data-broker {
155 when "/config:modules/config:module/config:type = 'binding-data-broker'";
157 uses common:data-state;
161 augment "/config:modules/config:module/config:state" {
162 case binding-rpc-broker {
163 when "/config:modules/config:module/config:type = 'binding-rpc-broker'";
164 uses common:rpc-state;
167 augment "/config:modules/config:module/config:state" {
168 case binding-notification-broker {
169 when "/config:modules/config:module/config:type = 'binding-notification-broker'";
170 uses common:notification-state;