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 resource_handle import ResourceHandleSerializer
18 from vnfc_cp_info import VnfcCpInfoSerializer
21 class VnfcResourceInfoSerializer(serializers.Serializer):
22 id = serializers.CharField(
23 help_text="Identifier of this VnfcResourceInfo instance.",
27 vduId = serializers.CharField(
28 help_text="Reference to the applicable VDU in the VNFD.",
32 computeResource = ResourceHandleSerializer(
33 help_text="Reference to the VirtualCompute resource.",
36 storageResourceIds = serializers.CharField(
37 help_text="References to the VirtualStorage resources. \
38 The value refers to a VirtualStorageResourceInfo item in the VnfInstance.",
44 reservationId = serializers.CharField(
45 help_text="The reservation identifier applicable to the resource.",
50 vnfcCpInfo = VnfcCpInfoSerializer(
51 help_text="CPs of the VNFC instance. \
52 Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance.",
56 metadata = serializers.DictField(
57 help_text="Metadata about this resource.",
58 child=serializers.CharField(help_text="KeyValue Pairs", allow_blank=True),