Modify vfc-ztevnfmdriver schemas
[vfc/nfvo/driver/vnfm/svnfm.git] / zte / vmanager / driver / interfaces / serializers.py
1 # Copyright 2018 ZTE Corporation.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #         http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 from rest_framework import serializers
16
17
18 class JobHistorySerializer(serializers.Serializer):
19     status = serializers.CharField(
20         help_text="Status of job",
21         required=True,
22         allow_null=False)
23     progress = serializers.IntegerField(
24         help_text="Progress of job",
25         required=True,
26         allow_null=False)
27     statusDescription = serializers.CharField(
28         help_text="Description of job",
29         required=False,
30         allow_null=True)
31     errorCode = serializers.CharField(
32         help_text="Error code of job",
33         required=False,
34         allow_blank=True)
35     responseId = serializers.IntegerField(
36         help_text="Response index of job",
37         required=True,
38         allow_null=False)
39
40
41 class JobDescriptorSerializer(serializers.Serializer):
42     status = serializers.CharField(
43         help_text="Status of job",
44         required=True,
45         allow_null=False)
46     progress = serializers.IntegerField(
47         help_text="Progress of job",
48         required=True,
49         allow_null=False)
50     statusDescription = serializers.CharField(
51         help_text="Description of job",
52         required=False,
53         allow_null=True)
54     errorCode = serializers.CharField(
55         help_text="Error code of job",
56         required=False,
57         allow_blank=True)
58     responseId = serializers.IntegerField(
59         help_text="Response index of job",
60         required=True,
61         allow_null=False)
62     responseHistoryList = JobHistorySerializer(
63         help_text="History of job",
64         many=True)
65
66
67 class JobQueryRespSerializer(serializers.Serializer):
68     jobId = serializers.CharField(
69         help_text="UUID of job",
70         required=True,
71         allow_null=False)
72     responseDescriptor = JobDescriptorSerializer(
73         help_text="Descriptor of job",
74         required=False)
75
76
77 class GrantVmlistSerializer(serializers.Serializer):
78     VMNumber = serializers.CharField(
79         help_text="VMNumber",
80         max_length=255,
81         required=False,
82         allow_null=True)
83     VMFlavor = serializers.CharField(
84         help_text="VMFlavor",
85         max_length=255,
86         required=False,
87         allow_null=True)
88     vimid = serializers.CharField(
89         help_text="vimid",
90         max_length=255,
91         required=True,
92         allow_blank=True)
93     tenant = serializers.CharField(
94         help_text="tenant",
95         max_length=255,
96         required=False,
97         allow_blank=True)
98
99
100 class GrantReqSerializer(serializers.Serializer):
101     nfvoid = serializers.CharField(
102         help_text="nfvoid",
103         max_length=255,
104         required=True,
105         allow_null=True)
106     vnfmid = serializers.CharField(
107         help_text="vnfmid",
108         max_length=255,
109         required=True,
110         allow_null=True)
111     vimid = serializers.CharField(
112         help_text="vimid",
113         max_length=255,
114         required=True,
115         allow_null=True)
116     tenant = serializers.CharField(
117         help_text="tenant",
118         max_length=255,
119         required=False,
120         allow_blank=True)
121     vnfinstanceid = serializers.CharField(
122         help_text="vnfinstanceid",
123         max_length=255,
124         required=False,
125         allow_null=True)
126     operationright = serializers.CharField(
127         help_text="operationright",
128         max_length=255,
129         required=False,
130         allow_null=True)
131     vmlist = GrantVmlistSerializer(
132         help_text='vmlist',
133         required=False,
134         many=True)
135     exvimidlist = serializers.ListSerializer(
136         help_text='exvimidlist',
137         child=serializers.CharField(allow_null=True),
138         required=False)
139
140
141 class GrantRespSerializer(serializers.Serializer):
142     vimid = serializers.CharField(
143         help_text="vimid",
144         max_length=255,
145         required=True,
146         allow_null=True)
147     tenant = serializers.CharField(
148         help_text="tenant",
149         max_length=255,
150         required=True,
151         allow_null=True)
152
153
154 class VMIDlistSerializer(serializers.Serializer):
155     VMID = serializers.CharField(
156         help_text="VMID",
157         max_length=255,
158         required=False,
159         allow_null=True)
160     VMName = serializers.CharField(
161         help_text="VMName",
162         max_length=255,
163         required=False,
164         allow_null=True)
165     vimid = serializers.CharField(
166         help_text="vimid",
167         max_length=255,
168         required=False,
169         allow_null=True)
170     tenant = serializers.CharField(
171         help_text="tenant",
172         max_length=255,
173         required=False,
174         allow_null=True)
175
176
177 class NotifyVmlistSerializer(serializers.Serializer):
178     VMNumber = serializers.CharField(
179         help_text="VMNumber",
180         max_length=255,
181         required=False,
182         allow_null=True)
183     vdutype = serializers.CharField(
184         help_text="vdutype",
185         max_length=255,
186         required=False,
187         allow_null=True)
188     VMFlavor = serializers.CharField(
189         help_text="VMFlavor",
190         max_length=255,
191         required=False,
192         allow_null=True)
193     VMIDlist = serializers.ListSerializer(
194         help_text='VMIDlist',
195         child=VMIDlistSerializer(help_text='VMIDlist', required=True, allow_null=True),
196         required=False,
197         allow_null=True)
198
199
200 class NotifyReqSerializer(serializers.Serializer):
201     nfvoid = serializers.CharField(
202         help_text="nfvoid",
203         max_length=255,
204         required=True,
205         allow_null=True)
206     vnfmid = serializers.CharField(
207         help_text="vnfmid",
208         max_length=255,
209         required=True,
210         allow_null=True)
211     vimid = serializers.CharField(
212         help_text="vimid",
213         max_length=255,
214         required=True,
215         allow_null=True)
216     timestamp = serializers.CharField(
217         help_text="timestamp",
218         max_length=255,
219         required=False,
220         allow_blank=True)
221     vnfinstanceid = serializers.CharField(
222         help_text="vnfinstanceid",
223         max_length=255,
224         required=False,
225         allow_null=True)
226     eventtype = serializers.CharField(
227         help_text="eventtype",
228         max_length=255,
229         required=False,
230         allow_null=True)
231     vmlist = NotifyVmlistSerializer(
232         help_text='vmlist',
233         required=False,
234         many=True)
235     extension = serializers.DictField(
236         help_text="extension",
237         child=serializers.DictField(allow_null=True),
238         required=False,
239         allow_null=True)
240     affectedcp = serializers.ListSerializer(
241         help_text='affectedcp',
242         child=serializers.DictField(allow_null=True),
243         required=False)
244     affectedvirtuallink = serializers.ListSerializer(
245         help_text='affectedvirtuallink',
246         child=serializers.DictField(allow_null=True),
247         required=False)
248
249
250 class ScaleReqSerializer(serializers.Serializer):
251     type = serializers.CharField(
252         help_text="type",
253         max_length=255,
254         required=True,
255         allow_null=True)
256     aspectId = serializers.CharField(
257         help_text="aspectId",
258         max_length=255,
259         required=True,
260         allow_null=True)
261     numberOfSteps = serializers.CharField(
262         help_text="numberOfSteps",
263         max_length=255,
264         required=True,
265         allow_null=True)
266     additionalParam = serializers.DictField(
267         help_text="additionalParam",
268         child=serializers.DictField(allow_null=True),
269         required=False,
270         allow_null=True)
271
272
273 class AffectedvmSerializer(serializers.Serializer):
274     extention = serializers.CharField(
275         help_text="extention",
276         max_length=255,
277         required=True,
278         allow_blank=True)
279     vmid = serializers.CharField(
280         help_text="vmid",
281         max_length=255,
282         required=True,
283         allow_null=True)
284     changtype = serializers.CharField(
285         help_text="changtype",
286         max_length=255,
287         required=True,
288         allow_null=True)
289     vduid = serializers.CharField(
290         help_text="vduid",
291         max_length=255,
292         required=True,
293         allow_null=True)
294     vmname = serializers.CharField(
295         help_text="vmname",
296         max_length=255,
297         required=True,
298         allow_null=True)
299     flavour = serializers.DictField(
300         help_text="flavour",
301         child=serializers.CharField(allow_blank=True),
302         required=False,
303         allow_null=True)
304
305
306 class HealReqSerializer(serializers.Serializer):
307     action = serializers.CharField(
308         help_text="action",
309         max_length=255,
310         required=True,
311         allow_null=False)
312     lifecycleoperation = serializers.CharField(
313         help_text="lifecycleoperation",
314         max_length=255,
315         required=True,
316         allow_null=False)
317     isgrace = serializers.CharField(
318         help_text="isgrace",
319         max_length=255,
320         required=False,
321         allow_null=True)
322     affectedvm = serializers.ListSerializer(
323         help_text='affectedvm',
324         child=AffectedvmSerializer(help_text='affectedvm', required=True, allow_null=True),
325         required=True,
326         allow_null=True)
327
328
329 class InstScaleHealRespSerializer(serializers.Serializer):
330     jobId = serializers.CharField(
331         help_text="jobid",
332         max_length=255,
333         required=True,
334         allow_null=True)
335     vnfInstanceId = serializers.CharField(
336         help_text="nfInstanceId",
337         max_length=255,
338         required=True,
339         allow_null=True)