vfclcm upgrade from python2 to python3
[vfc/gvnfm/vnflcm.git] / lcm / lcm / nf / serializers / vnfc_resource_info.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 from .resource_handle import ResourceHandleSerializer
18 from .vnfc_cp_info import VnfcCpInfoSerializer
19
20
21 class VnfcResourceInfoSerializer(serializers.Serializer):
22     id = serializers.CharField(
23         help_text="Identifier of this VnfcResourceInfo instance.",
24         max_length=255,
25         required=False,
26         allow_null=False)
27     vduId = serializers.CharField(
28         help_text="Reference to the applicable VDU in the VNFD.",
29         max_length=255,
30         required=False,
31         allow_null=False)
32     computeResource = ResourceHandleSerializer(
33         help_text="Reference to the VirtualCompute resource.",
34         required=True,
35         allow_null=False)
36     storageResourceIds = serializers.ListSerializer(
37         help_text="References to the VirtualStorage resources. \
38         The value refers to a VirtualStorageResourceInfo item in the VnfInstance.",
39         child=serializers.CharField(help_text="Identifier In Vnf", allow_blank=True),
40         required=False,
41         allow_null=True)
42     reservationId = serializers.CharField(
43         help_text="The reservation identifier applicable to the resource.",
44         max_length=255,
45         required=False,
46         allow_null=True,
47         allow_blank=True)
48     vnfcCpInfo = VnfcCpInfoSerializer(
49         help_text="CPs of the VNFC instance. \
50         Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance.",
51         many=True,
52         required=False,
53         allow_null=True)
54     metadata = serializers.DictField(
55         help_text="Metadata about this resource.",
56         child=serializers.CharField(help_text="KeyValue Pairs", allow_blank=True),
57         required=False,
58         allow_null=True)