Fixed discard-changes for mdsal netconf, mapping code cleanup.
[controller.git] / opendaylight / md-sal / model / model-flow-service / src / main / yang / sal-group.yang
1 module sal-group {
2     namespace "urn:opendaylight:group:service";
3     prefix group;
4
5     import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
6     import opendaylight-group-types {prefix group-type;revision-date 2013-10-18;}
7     import flow-capable-transaction {prefix tr;}
8
9     revision "2013-09-18" {
10         description "Initial revision of group service";
11     }        
12     
13     grouping node-group {
14         uses "inv:node-context-ref";        
15         uses group-type:group;
16     }
17
18     /** Base configuration structure **/
19     grouping group-update {
20         uses "inv:node-context-ref";
21         
22         container original-group {
23             uses group-type:group;
24         }
25         container updated-group {
26             uses group-type:group;
27         }
28     }
29
30     rpc add-group {
31         input {
32             uses tr:transaction-metadata;
33             leaf group-ref {
34                 type group-type:group-ref;
35             }
36             uses node-group;            
37         }
38         output {
39             uses tr:transaction-aware;
40         }
41     }
42
43     rpc remove-group {
44         input {
45             uses tr:transaction-metadata;
46             leaf group-ref {
47                 type group-type:group-ref;
48             }
49             uses node-group;            
50         }
51         output {
52             uses tr:transaction-aware;
53         }
54     }
55
56     rpc update-group {
57         input {
58             uses tr:transaction-metadata;
59             leaf group-ref {
60                 type group-type:group-ref;
61             }
62             uses group-update;            
63         }
64         output {
65             uses tr:transaction-aware;
66         }
67     } 
68
69     notification group-added {
70         uses tr:transaction-metadata;
71         leaf group-ref {
72             type group-type:group-ref;
73         }
74         uses node-group;
75         uses tr:transaction-aware;
76     }
77
78     notification group-updated {
79         uses tr:transaction-metadata;
80         leaf group-ref {
81             type group-type:group-ref;
82         }
83         uses node-group;
84         uses tr:transaction-aware;
85     }
86
87     notification group-removed {
88         uses tr:transaction-metadata;
89         leaf group-ref {
90             type group-type:group-ref;
91         }
92         uses node-group;
93         uses tr:transaction-aware;
94     }    
95 }