Changes for new odl version
[appc.git] / appc-inbound / appc-artifact-handler / model / src / main / yang / artifact-handler.yang
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP : APPC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Copyright (C) 2017 Amdocs
8  * =============================================================================
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  * 
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  * 
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  * 
21  * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22  * ============LICENSE_END=========================================================
23  */
24
25 module artifact-handler {
26     yang-version 1;
27
28     namespace "org.onap.appc:artifacthandler";
29     prefix artifacthandler;
30
31     organization "AT&T, Inc.";
32
33     description
34         "Defines APPC interface to push reference data and templates.";
35
36     revision "2017-03-21" {
37         description
38                 "Initial draft";
39     }
40
41     grouping configuration-document-information { 
42         uses request-information; 
43         uses document-parameters; 
44      }
45     
46      grouping request-information { 
47         container request-information { 
48            leaf request-id { 
49               type string; 
50            } 
51            leaf request-action { 
52               type enumeration { 
53                  enum "StoreSdcDocumentRequest";
54               } 
55            } 
56            leaf request-sub-action { 
57               type enumeration { 
58                  enum "STOREDOCUMENT";
59               } 
60            } 
61            leaf source { 
62               type string; 
63            } 
64         } 
65      }
66      grouping document-parameters { 
67         container document-parameters { 
68            leaf service-uuid { 
69               type string; 
70               mandatory true; 
71            } 
72            leaf distribution-id { 
73               type string; 
74            } 
75            leaf service-name { 
76               type string; 
77            } 
78            leaf service-description { 
79               type string; 
80            } 
81            leaf service-artifacts { 
82               type string; 
83            } 
84            leaf resource-uuid { 
85               type string; 
86            } 
87            leaf resource-instance-name { 
88               type string; 
89            } 
90            leaf resource-name { 
91               type string; 
92            } 
93            leaf resource-version { 
94               type string; 
95            } 
96            leaf resource-type { 
97               type string; 
98            } 
99            leaf artifact-uuid { 
100               type string; 
101            } 
102            leaf artifact-name { 
103               type string; 
104            } 
105            leaf artifact-type { 
106               type string; 
107            } 
108            leaf artifact-version { 
109               type string; 
110            } 
111            leaf artifact-description { 
112               type string; 
113            } 
114            leaf artifact-contents { 
115               type string; 
116            } 
117         } 
118      }
119      rpc uploadartifact {
120          description "upload the artifact into APPC";
121          input {
122                 uses configuration-document-information;
123          }
124          output { 
125              container config-document-response { 
126                 leaf request-id { 
127                    type string; 
128                 } 
129                 leaf status { 
130                    type string; 
131                 } 
132                 leaf error-reason { 
133                    type string; 
134                 } 
135              } 
136           }
137      }     
138 }