diff options
author | laili <lai.li@zte.com.cn> | 2018-08-08 08:49:17 +0800 |
---|---|---|
committer | laili <lai.li@zte.com.cn> | 2018-08-08 08:49:17 +0800 |
commit | 1d69a46056e6c43fd43e3758fd4870a8796b6a15 (patch) | |
tree | 9517d5eef592c942f00ecb3ea9debf6a267d9f5e | |
parent | 1f2a7672da12bc91aa7f2c3a1d5cd13fb76d707f (diff) |
Modify vnf query related stuffs in vnflcm.
Add scale_info.py, ext_cp_info.py and cp_protocol_info.py to the serializers of nf. Note that the serializer in cp_protocol_info.py is imported by ext_cp_info.py.
Change-Id: I9e0410f3302a8d00a40fed086c443b4eaecc6140
Issue-ID: VFC-1016
Signed-off-by: laili <lai.li@zte.com.cn>
-rw-r--r-- | lcm/lcm/nf/serializers/cp_protocol_info.py | 29 | ||||
-rw-r--r-- | lcm/lcm/nf/serializers/ext_cp_info.py | 43 | ||||
-rw-r--r-- | lcm/lcm/nf/serializers/scale_info.py | 31 |
3 files changed, 103 insertions, 0 deletions
diff --git a/lcm/lcm/nf/serializers/cp_protocol_info.py b/lcm/lcm/nf/serializers/cp_protocol_info.py new file mode 100644 index 00000000..770f7e41 --- /dev/null +++ b/lcm/lcm/nf/serializers/cp_protocol_info.py @@ -0,0 +1,29 @@ +# 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 + + +class CpProtocolInfoSerializer(serializers.Serializer): + layerProtocol = serializers.ChoiceField( + help_text="The identifier of layer(s) and protocol(s) associated to the network address information.", + choices=["IP_OVER_ETHERNET"], + required=True, + allow_null=False, + allow_blank=False) + ipOverEthernet = serializers.DictField( + help_text="IP addresses over Ethernet to assign to the extCP instance.", + child=serializers.CharField(allow_blank=True), + required=False, + allow_null=True,) diff --git a/lcm/lcm/nf/serializers/ext_cp_info.py b/lcm/lcm/nf/serializers/ext_cp_info.py new file mode 100644 index 00000000..0d427f82 --- /dev/null +++ b/lcm/lcm/nf/serializers/ext_cp_info.py @@ -0,0 +1,43 @@ +# 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 cp_protocol_info import CpProtocolInfoSerializer + + +class ExtCpInfoSerializer(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=True, + allow_blank=False) + cpdId = serializers.CharField( + help_text="Identifier of the external CPD, VnfExtCpd, in the VNFD.", + max_length=255, + required=True, + allow_null=True, + allow_blank=False) + cpProtocolInfo = CpProtocolInfoSerializer( + help_text="Network protocol information for this CP.", + many=True, + required=False, + allow_null=True) + extLinkPortId = serializers.CharField( + help_text="Identifier of the extLinkPortInfo structure inside the extVirtualLinkInfo structure.", + max_length=255, + required=False, + allow_null=True, + allow_blank=True) diff --git a/lcm/lcm/nf/serializers/scale_info.py b/lcm/lcm/nf/serializers/scale_info.py new file mode 100644 index 00000000..041e4ea9 --- /dev/null +++ b/lcm/lcm/nf/serializers/scale_info.py @@ -0,0 +1,31 @@ +# 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 + + +class ScaleInfoSerializer(serializers.Serializer): + aspectId = serializers.CharField( + help_text="Identifier of the scaling aspect.", + max_length=255, + required=True, + allow_null=False, + allow_blank=False) + scaleLevel = serializers.IntegerField( + help_text="Indicates the scale level. \ + The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.", + max_length=255, + required=True, + allow_null=False, + allow_blank=False) |