BUG-4083: Li: Enabling polling of statistics via config subsystem.
[openflowplugin.git] / openflowplugin-impl / src / main / yang / openflow-plugin-impl.yang
1 module openflow-plugin-provider-impl {
2         yang-version 1;
3     namespace "urn:opendaylight:params:xml:ns:yang:config:openflow:plugin:impl";
4     prefix "openflow-plugin-provider-impl";
5
6     import config {prefix config; revision-date 2013-04-05;}
7     import rpc-context { prefix rpcx; revision-date 2013-06-17; }
8     import openflow-provider {prefix openflow-provider; revision-date 2015-03-31;}
9     import openflow-switch-connection-provider {prefix openflow-switch-connection-provider;revision-date 2014-03-28;}
10     import opendaylight-md-sal-binding { prefix md-sal-binding; revision-date 2013-10-28;}
11     import opendaylight-sal-binding-broker-impl { prefix sal-broker; revision-date 2013-10-28;}
12     import openflow-plugin-types { prefix ofp-types; revision-date 2015-03-27;}
13     import openflowplugin-extension-registry {prefix ofp-ext-reg; revision-date 2015-04-25;}
14
15     description
16         "openflow-plugin-impl";
17
18     revision "2015-03-27" {
19         description
20             "Second openflow plugin implementation.";
21     }
22
23     identity openflow-plugin-provider-impl {
24         base config:module-type;
25         config:provided-service openflow-provider:openflow-provider;
26         config:provided-service ofp-ext-reg:openflow-extension-registry-provider;
27         config:java-name-prefix OpenFlowProvider;
28     }
29
30     augment "/config:modules/config:module/config:configuration" {
31         case openflow-plugin-provider-impl {
32             when "/config:modules/config:module/config:type = 'openflow-plugin-provider-impl'";
33
34             container data-broker {
35                 uses config:service-ref {
36                     refine type {
37                         mandatory true;
38                         config:required-identity md-sal-binding:binding-async-data-broker;
39                     }
40                 }
41             }
42             container rpc-registry {
43                 uses config:service-ref {
44                     refine type {
45                         mandatory true;
46                         config:required-identity md-sal-binding:binding-rpc-registry;
47                     }
48                 }
49             }
50             container notification-adapter {
51                 uses config:service-ref {
52                     refine type {
53                         mandatory true;
54                         config:required-identity sal-broker:binding-new-notification-service;
55                     }
56                 }
57             }
58             container notification-publish-adapter {
59                 uses config:service-ref {
60                     refine type {
61                         mandatory true;
62                         config:required-identity sal-broker:binding-new-notification-publish-service;
63                     }
64                 }
65             }
66             list openflow-switch-connection-provider {
67                 uses config:service-ref {
68                     refine type {
69                         mandatory true;
70                         config:required-identity openflow-switch-connection-provider:openflow-switch-connection-provider;
71                     }
72                 }
73             }
74             leaf role {
75                 type ofp-types:ofp-role;
76                 default "NOCHANGE";
77             }
78             leaf rpc-requests-quota {
79                 type uint32;
80                 default 500;
81             }
82             leaf switch-features-mandatory {
83                 type boolean;
84                 default false;
85             }
86             leaf global-notification-quota {
87                 type uint32;
88                 default 131072;
89             }
90             leaf is-statistics-polling-off {
91                 type boolean;
92                 default "false";
93             }
94         }
95
96     }
97 }