Initial OpenECOMP Demo commit
[demo.git] / vnfs / honeycomb_plugin / sample_plugin / sample-plugin-api / src / main / yang / sample-plugin.yang
1 //*************************************************************//
2 //
3 // Copyright © 2017 AT&T Intellectual Property. All rights reserved.
4 //
5 // Licensed under the Apache License, Version 2.0 (the "License");
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 // http://www.apache.org/licenses/LICENSE-2.0
9 // 
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16 //******************************************************************
17
18
19 module sample-plugin {
20
21     yang-version 1;
22     namespace "urn:opendaylight:params:xml:ns:yang:sample-plugin";
23     prefix "sample-plugin";
24
25     import ietf-inet-types { prefix "inet"; }
26
27     description
28         "This YANG module defines the generic configuration and
29         operational data for sample-plugin in VPP";
30
31     revision "2016-09-18" {
32         description "Initial revision of sample-plugin model";
33     }
34
35     container sample-plugin {
36         uses sample-plugin-params;
37         description "Configuration data of sample-plugin in Honeycomb";
38
39         // READ
40         // curl -u admin:admin http://localhost:8181/restconf/config/sample-plugin:sample-plugin
41
42         // WRITE
43         // curl http://localhost:8181/restconf/operational/sample-plugin:sample-plugin
44
45     }
46
47     container sample-plugin-state {
48         config false;
49         uses sample-plugin-params;
50         description "Operational data of sample-plugin persisted in VPP";
51
52         // READ
53         // curl -u admin:admin  http://localhost:8181/restconf/operational/sample-plugin:sample-plugin-state
54     }
55
56     grouping sample-plugin-params {
57         container pg-streams {
58             list pg-stream {
59
60                 key id;
61                 leaf id {
62                     type string;
63                 }
64
65                 leaf is-enabled {
66                   type boolean;
67                 }
68             }
69         }
70     }
71
72     notification sample-notification {
73         leaf content {
74             type string;
75         }
76     }
77 }