Fix occasional NPEs in Connection manager
[controller.git] / opendaylight / sal / yang-prototype / sal / model / model-flow-service / src / main / yang / flow-service.yang
1 module sal-flow {
2     namespace "urn:opendaylight:flow:service";
3     prefix flow;
4
5     import yang-ext {prefix ext;}
6     import opendaylight-inventory {prefix inv;}
7     import ietf-inet-types {prefix inet;}
8     import opendaylight-flow-types {prefix types;}
9
10
11     revision "2013-08-19" {
12         description "Initial revision of flow service";
13     }
14
15
16     typedef flow-table-ref {
17         type instance-identifier;
18     }
19     
20     grouping node-flow {
21         leaf node {
22             type inv:node-ref;
23         }
24         leaf flow-table {
25             type flow-table-ref;
26         }
27         uses types:flow;
28     }
29
30     /** Base configuration structure **/
31     grouping flow-update {
32         container original-flow {
33             uses types:flow;
34         }
35         container updated-flow {
36             uses types:flow;
37         }
38     }
39
40     rpc add-flow {
41         input {
42             uses node-flow;
43         }
44     }
45
46     rpc remove-flow {
47         input {
48             uses node-flow;
49         }
50     }
51
52     rpc update-flow {
53         input {
54             uses node-flow;
55         }
56     }
57
58     notification flow-added {
59         uses node-flow;
60     }
61
62     notification flow-updated {
63         uses node-flow;
64     }
65
66     notification flow-removed {
67         uses node-flow;
68     }
69
70     augment "/inv:nodes/inv:node" {
71         ext:augment-identifier "flow-capable-node";
72         container flow-tables {
73             list table {
74                 key "id";
75                 leaf "id" {
76                     type inet:uri;
77                 }
78             }
79         }
80     }
81 }