Refactor vfc-vnfmgr schema and code
[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", required=True)
21     ip = serializers.CharField(help_text="the ip of vnf", required=True)
22     port = serializers.CharField(help_text="the port of vnf", required=True)
23     username = serializers.CharField(
24         help_text="the username of vnf", required=True)
25     password = serializers.CharField(
26         help_text="the password of vnf", required=True)
27
28
29 class ResponseSerializer(serializers.Serializer):
30     vnfInstId = serializers.CharField(
31         help_text="the instance id of vnf", required=True)
32
33
34 class CpSerializer(serializers.Serializer):
35     cpId = serializers.CharField(help_text="the cps id of vnf", required=True)
36     cpdId = serializers.CharField(
37         help_text="the cpds id of vnf",
38         required=True)
39
40
41 class SpecificDataSerializer(serializers.Serializer):
42     autoScalable = serializers.CharField(
43         help_text="the autoScalable of vnf", required=True)
44     autoHealable = serializers.CharField(
45         help_text="the autoHealable of vnf", required=True)
46
47
48 class ConfigDataSerializer(serializers.Serializer):
49     cp = CpSerializer(help_text="the cps of vnf", many=True)
50     vnfSpecificData = SpecificDataSerializer(
51         help_text="the vnfSpecificData of vnf", required=True)
52
53
54 class VnfConfigSerializer(serializers.Serializer):
55     vnfInstanceId = serializers.CharField(
56         help_text="the instance id of vnf", required=True)
57     vnfConfigurationData = ConfigDataSerializer(
58         help_text="the ConfigDataSerializer of vnf", required=True)