Modify vfc-vnfmgr swagger schemas
[vfc/gvnfm/vnfmgr.git] / mgr / mgr / vnfreg / 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 VnfInfoSerializer(serializers.Serializer):
19     vnfInstId = serializers.CharField(
20         help_text="the instance id of vnf",
21         required=True,
22         max_length=200,
23         allow_null=True)
24     ip = serializers.CharField(
25         help_text="the ip of vnf",
26         required=True,
27         max_length=200,
28         allow_null=True)
29     port = serializers.CharField(
30         help_text="the port of vnf",
31         required=True,
32         max_length=200,
33         allow_null=True)
34     username = serializers.CharField(
35         help_text="the username of vnf",
36         required=True,
37         max_length=255,
38         allow_null=True)
39     password = serializers.CharField(
40         help_text="the password of vnf",
41         required=True,
42         max_length=255,
43         allow_null=True)
44
45
46 class ResponseSerializer(serializers.Serializer):
47     vnfInstId = serializers.CharField(
48         help_text="the instance id of vnf",
49         required=True,
50         max_length=200,
51         allow_null=False)
52
53
54 class CpSerializer(serializers.Serializer):
55     cpId = serializers.CharField(
56         help_text="cpId",
57         required=True,
58         max_length=200,
59         allow_null=True)
60     cpdId = serializers.CharField(
61         help_text="cpdId",
62         required=True,
63         max_length=200,
64         allow_null=True)
65
66
67 class SpecificDataSerializer(serializers.Serializer):
68     autoScalable = serializers.CharField(
69         help_text="autoScalable",
70         required=True,
71         max_length=200,
72         allow_null=True)
73     autoHealable = serializers.CharField(
74         help_text="autoHealable",
75         required=True,
76         max_length=200,
77         allow_null=True)
78
79
80 class ConfigDataSerializer(serializers.Serializer):
81     cp = CpSerializer(
82         help_text="cps",
83         many=True,
84         allow_null=True)
85     vnfSpecificData = SpecificDataSerializer(
86         help_text="vnfSpecificData",
87         required=True,
88         allow_null=True)
89
90
91 class VnfConfigSerializer(serializers.Serializer):
92     vnfInstanceId = serializers.CharField(
93         help_text="vnfInstanceId",
94         required=True,
95         max_length=200,
96         allow_null=True)
97     vnfConfigurationData = ConfigDataSerializer(
98         help_text="vnfConfigurationData",
99         required=True,
100         allow_null=True)