diff options
-rw-r--r-- | lcm/lcm/nf/serializers/vnfc_cp_info.py | 36 | ||||
-rw-r--r-- | lcm/lcm/nf/serializers/vnfc_resource_info.py | 60 |
2 files changed, 96 insertions, 0 deletions
diff --git a/lcm/lcm/nf/serializers/vnfc_cp_info.py b/lcm/lcm/nf/serializers/vnfc_cp_info.py new file mode 100644 index 00000000..693aba16 --- /dev/null +++ b/lcm/lcm/nf/serializers/vnfc_cp_info.py @@ -0,0 +1,36 @@ + +from rest_framework import serializers + +from cp_protocol_info import CpProtocolInfoSerializer + + +class VnfcCpInfoSerializer(serializers.Serializer): + id = serializers.CharField( + help_text="Identifier of the external CP instance and the related information instance.", + max_length=255, + required=True, + allow_null=False, + allow_blank=False) + cpdId = serializers.CharField( + help_text="Identifier of the external CPD, VnfExtCpd, in the VNFD.", + max_length=255, + required=True, + allow_null=False, + allow_blank=False) + vnfExtCpId = serializers.CharField( + help_text="When the VNFC CP is exposed as external CP of the VNF, the identifier of this external VNF CP.", + required=False, + max_length=255, + allow_null=True, + allow_blank=True) + cpProtocolInfo = CpProtocolInfoSerializer( + help_text="Network protocol information for this CP.", + many=True, + required=False, + allow_null=True) + vnfLinkPortId = serializers.CharField( + help_text="Identifier of the vnfLinkPorts structure in the vnfVirtualLinkResourceInfo structure.", + max_length=255, + required=True, + allow_null=False, + allow_blank=False) diff --git a/lcm/lcm/nf/serializers/vnfc_resource_info.py b/lcm/lcm/nf/serializers/vnfc_resource_info.py new file mode 100644 index 00000000..2c6c4f19 --- /dev/null +++ b/lcm/lcm/nf/serializers/vnfc_resource_info.py @@ -0,0 +1,60 @@ +# Copyright 2018 ZTE Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from rest_framework import serializers + +from resource_handle import ResourceHandleSerializer +from vnfc_cp_info import VnfcCpInfoSerializer + + +class VnfcResourceInfoSerializer(serializers.Serializer): + id = serializers.CharField( + help_text="Identifier of this VnfcResourceInfo instance.", + max_length=255, + required=False, + allow_null=False) + vduId = serializers.CharField( + help_text="Reference to the applicable VDU in the VNFD.", + max_length=255, + required=False, + allow_null=False) + computeResource = ResourceHandleSerializer( + help_text="Reference to the VirtualCompute resource.", + required=True, + allow_null=False) + storageResourceIds = serializers.CharField( + help_text="References to the VirtualStorage resources. \ + The value refers to a VirtualStorageResourceInfo item in the VnfInstance.", + max_length=255, + many=True, + required=False, + allow_null=True, + allow_blank=True) + reservationId = serializers.CharField( + help_text="The reservation identifier applicable to the resource.", + max_length=255, + required=False, + allow_null=True, + allow_blank=True) + vnfcCpInfo = VnfcCpInfoSerializer( + help_text="CPs of the VNFC instance. \ + Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance.", + many=True, + required=False, + allow_null=True) + metadata = serializers.DictField( + help_text="Metadata about this resource.", + child=serializers.CharField(help_text="KeyValue Pairs", allow_blank=True), + required=False, + allow_null=True) |