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.controller.sal.binding.impl.connect.dom.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-rpc-broker {
40 base config:module-type;
41 config:provided-service sal:binding-rpc-registry;
42 config:java-name-prefix RpcBrokerImpl;
45 identity binding-notification-broker {
46 base config:module-type;
47 config:provided-service sal:binding-notification-service;
48 config:provided-service sal:binding-notification-subscription-service;
49 config:java-name-prefix NotificationBrokerImpl;
52 identity runtime-generated-mapping {
53 base config:module-type;
54 config:provided-service binding-dom-mapping-service;
55 config:java-name-prefix RuntimeMapping;
58 augment "/config:modules/config:module/config:configuration" {
59 case binding-broker-impl {
60 when "/config:modules/config:module/config:type = 'binding-broker-impl'";
63 container rpc-registry {
64 uses config:service-ref {
67 config:required-identity sal:binding-rpc-registry;
72 container data-broker {
73 uses config:service-ref {
76 config:required-identity sal:binding-data-broker;
81 container notification-service {
82 uses config:service-ref {
85 config:required-identity sal:binding-notification-service;
92 augment "/config:modules/config:module/config:configuration" {
93 case binding-data-broker {
94 when "/config:modules/config:module/config:type = 'binding-data-broker'";
95 container dom-broker {
96 uses config:service-ref {
99 config:required-identity dom:dom-broker-osgi-registry;
104 container mapping-service {
105 uses config:service-ref {
108 config:required-identity binding-dom-mapping-service;
116 augment "/config:modules/config:module/config:state" {
117 case runtime-generated-mapping {
118 when "/config:modules/config:module/config:type = 'runtime-generated-mapping'";
122 augment "/config:modules/config:module/config:state" {
123 case binding-data-broker {
124 when "/config:modules/config:module/config:type = 'binding-data-broker'";
126 uses common:data-state;
130 augment "/config:modules/config:module/config:state" {
131 case binding-rpc-broker {
132 when "/config:modules/config:module/config:type = 'binding-rpc-broker'";
133 uses common:rpc-state;
136 augment "/config:modules/config:module/config:state" {
137 case binding-notification-broker {
138 when "/config:modules/config:module/config:type = 'binding-notification-broker'";
139 uses common:notification-state;