summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlaili <lai.li@zte.com.cn>2018-08-08 08:49:17 +0800
committerlaili <lai.li@zte.com.cn>2018-08-08 08:49:17 +0800
commit1d69a46056e6c43fd43e3758fd4870a8796b6a15 (patch)
tree9517d5eef592c942f00ecb3ea9debf6a267d9f5e
parent1f2a7672da12bc91aa7f2c3a1d5cd13fb76d707f (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.py29
-rw-r--r--lcm/lcm/nf/serializers/ext_cp_info.py43
-rw-r--r--lcm/lcm/nf/serializers/scale_info.py31
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)