1 # Copyright 2018 ZTE Corporation.
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
7 # http://www.apache.org/licenses/LICENSE-2.0
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.
15 from rest_framework import serializers
17 from catalog.pub.utils.toscaparser.nsdmodel import EtsiNsdInfoModel
18 from catalog.pub.utils.toscaparser.vnfdmodel import EtsiVnfdInfoModel
21 class JobResponseSerializer(serializers.Serializer):
22 progress = serializers.CharField(help_text="progress", required=False)
23 desc = serializers.CharField(help_text="desc", required=False)
24 errcode = serializers.CharField(help_text="errcode", required=False)
27 class JobResponseHistoryListSerializer(serializers.Serializer):
28 status = serializers.CharField(help_text="status", required=False)
29 progress = serializers.CharField(help_text="progress", required=False)
30 statusDescription = serializers.CharField(
31 help_text="statusDescription", required=False)
32 errorCode = serializers.CharField(help_text="errcode", required=False)
33 responseId = serializers.CharField(help_text="responseId", required=False)
36 class JobResponseDescriptorSerializer(serializers.Serializer):
37 status = serializers.CharField(help_text="status", required=False)
38 progress = serializers.CharField(help_text="progress", required=False)
39 statusDescription = serializers.CharField(
40 help_text="statusDescription", required=False)
41 errorCode = serializers.CharField(help_text="errcode", required=False)
42 responseId = serializers.CharField(help_text="responseId", required=False)
43 responseHistoryList = JobResponseHistoryListSerializer(
44 many=True, help_text="responseHistoryList", required=False)
47 class JobRequestSerializer(serializers.Serializer):
48 jobId = serializers.CharField(
49 help_text="this field is generated from a query_serializer",
51 responseDescriptor = JobResponseDescriptorSerializer(
52 help_text="this one too!", required=False)
55 class PostJobResponseResultSerializer(serializers.Serializer):
56 result = serializers.CharField(help_text="result", required=True)
57 msg = serializers.CharField(help_text="msg", required=False)
60 class NsPackageDistributeRequestSerializer(serializers.Serializer):
61 csarId = serializers.CharField(help_text="csarId", required=True)
64 class NsPackageInfoSerializer(serializers.Serializer):
65 nsdId = serializers.CharField(help_text="csarId", required=True)
66 nsPackageId = serializers.CharField(help_text="csarId", required=True)
67 nsdProvider = serializers.CharField(help_text="csarId", required=True)
68 nsdVersion = serializers.CharField(help_text="csarId", required=True)
69 csarName = serializers.CharField(help_text="csarId", required=True)
70 nsdModel = serializers.CharField(help_text="csarId", required=True)
71 downloadUrl = serializers.CharField(help_text="csarId", required=True)
74 class NsPackageSerializer(serializers.Serializer):
75 csarId = serializers.CharField(help_text="csarId", required=True)
76 package_info = NsPackageInfoSerializer(
77 help_text="package_info", required=True)
80 class NsPackagesSerializer(serializers.ListSerializer):
81 child = NsPackageSerializer(many=True)
84 class NfPackageDistributeRequestSerializer(serializers.Serializer):
85 csar_id = serializers.CharField(help_text="csarId", required=True)
86 vim_ids = serializers.ListField(
88 child=serializers.CharField(),
90 lab_vim_id = serializers.CharField(help_text="lab_vim_id", required=False)
93 class NfPackageInfoSerializer(serializers.Serializer):
94 vnfdId = serializers.CharField(required=True)
95 vnfPackageId = serializers.CharField(required=True)
96 vnfdProvider = serializers.CharField(required=True)
97 vnfdVersion = serializers.CharField(required=True)
98 vnfVersion = serializers.CharField(required=True)
99 csarName = serializers.CharField(required=True)
100 vnfdModel = serializers.CharField(required=True)
101 downloadUrl = serializers.CharField(required=True)
104 class NfImageInfoSerializer(serializers.Serializer):
105 index = serializers.CharField(required=True)
106 fileName = serializers.CharField(required=True)
107 imageId = serializers.CharField(required=True)
108 vimId = serializers.CharField(required=True)
109 vimUser = serializers.CharField(required=True)
110 tenant = serializers.CharField(required=True)
111 status = serializers.CharField(required=True)
114 class NfPackageSerializer(serializers.Serializer):
115 csarId = serializers.CharField(help_text="csarId", required=True)
116 packageInfo = NfPackageInfoSerializer(
117 help_text="packageInfo", required=True)
118 imageInfo = NfImageInfoSerializer(help_text="imageInfo", required=False)
121 class NfPackagesSerializer(serializers.ListSerializer):
122 child = NfPackageSerializer(many=True)
125 class PostJobResponseSerializer(serializers.Serializer):
126 jobId = serializers.CharField(help_text="jobId", required=True)
129 class ParseModelRequestSerializer(serializers.Serializer):
130 csarId = serializers.CharField(help_text="csarId", required=True)
131 inputs = serializers.JSONField(help_text="inputs", required=False)
134 class EtsiNsdInfoModelSerializer(serializers.ModelSerializer):
137 model = EtsiNsdInfoModel
140 class EtsiVnfdInfoModelSerializer(serializers.ModelSerializer):
143 model = EtsiVnfdInfoModel
146 class ParseNSPackageResponseSerializer(serializers.Serializer):
147 model = EtsiNsdInfoModelSerializer(help_text="model", required=True)
150 class ParseNfPackageResponseSerializer(serializers.Serializer):
151 model = EtsiVnfdInfoModelSerializer(help_text="model", required=True)