320afccb2ec5a318033dfed2245ea8b22ee65913
[controller.git] / opendaylight / md-sal / messagebus-impl / src / main / yang / messagebus-app-impl.yang
1 module messagebus-app-impl {
2     yang-version 1;
3     namespace "urn:opendaylight:params:xml:ns:yang:controller:messagebus:app:impl";
4     prefix "binding-impl";
5
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 messagebus-event-source-registry {prefix esr;}
10
11     description
12         "Service definition for Message Bus application implementation.";
13  
14     revision "2015-02-03" {
15         description "Second revision. Message Bus opensourcing";
16     }
17
18     identity messagebus-app-impl {
19         base config:module-type;
20         config:provided-service esr:event-source-registry;
21         config:java-name-prefix MessageBusAppImpl;
22     }
23
24     augment "/config:modules/config:module/config:configuration" {
25         case messagebus-app-impl {
26             when "/config:modules/config:module/config:type = 'messagebus-app-impl'";
27             
28             container binding-broker {
29                 uses config:service-ref {
30                     refine type {
31                         mandatory true;
32                         config:required-identity sal:binding-broker-osgi-registry;
33                     }
34                 }
35             }
36
37             container dom-broker {
38                 uses config:service-ref {
39                     refine type {
40                         mandatory true;
41                         config:required-identity dom:dom-broker-osgi-registry;
42                     }
43                 }
44             }
45
46             list namespace-to-stream {
47                 key urn-prefix;
48
49                 leaf urn-prefix {
50                     type string;
51                 }
52
53                 leaf stream-name {
54                     type string;
55                 }
56             }
57         }
58     }
59     
60     augment "/config:modules/config:module/config:state" {
61         case messagebus-app-impl {
62             when "/config:modules/config:module/config:type = 'messagebus-app-impl'";
63         }
64     }
65 }