summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFu Jinhua <fu.jinhua@zte.com.cn>2018-08-09 06:00:26 +0000
committerGerrit Code Review <gerrit@onap.org>2018-08-09 06:00:26 +0000
commit2d54e595c87a5648b941106a641d1af7b7417d0d (patch)
tree00037ae4220737a61b6cf5d52d51d06c20aa22b8
parent02a757242ded0523ab932a67cfeb5b927b559ca7 (diff)
parent4a3fe2a01932804e449e18a573c8b456695a75dc (diff)
Merge changes I3010d415,Ic0348306
* changes: Modify vnf instantiation related stuffs. Modify vnf instantiation related stuffs.
-rw-r--r--lcm/lcm/nf/serializers/cp_protocol_data.py32
-rw-r--r--lcm/lcm/nf/serializers/ip_over_ethernet_address_data.py31
-rw-r--r--lcm/lcm/nf/serializers/vnf_ext_cp_config.py38
3 files changed, 101 insertions, 0 deletions
diff --git a/lcm/lcm/nf/serializers/cp_protocol_data.py b/lcm/lcm/nf/serializers/cp_protocol_data.py
new file mode 100644
index 00000000..495e35f0
--- /dev/null
+++ b/lcm/lcm/nf/serializers/cp_protocol_data.py
@@ -0,0 +1,32 @@
+# 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 ip_over_ethernet_address_data import IpOverEthernetAddressDataSerializer
+
+
+class CpProtocolDataSerializer(serializers.Serializer):
+ layerProtocol = serializers.ChoiceField(
+ help_text="Identifier of layer(s) and protocol(s).",
+ choices=["IP_OVER_ETHERNET"],
+ required=True,
+ allow_null=False,
+ allow_blank=False)
+ ipOverEthernet = IpOverEthernetAddressDataSerializer(
+ help_text="Network address data for IP over Ethernet to assign to the extCP instance. \
+ Shall be present if layerProtocol is equal to IP_OVER_ETHERNET, \
+ and shall be absent otherwise.",
+ required=False,
+ allow_null=True,)
diff --git a/lcm/lcm/nf/serializers/ip_over_ethernet_address_data.py b/lcm/lcm/nf/serializers/ip_over_ethernet_address_data.py
new file mode 100644
index 00000000..562d5fb9
--- /dev/null
+++ b/lcm/lcm/nf/serializers/ip_over_ethernet_address_data.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
+from ip_addresse import IpAddresseSerializer
+
+
+class IpOverEthernetAddressDataSerializer(serializers.Serializer):
+ macAddress = serializers.CharField(
+ help_text="MAC address. If this attribute is not present, \
+ it shall be chosen by the VIM.",
+ required=False,
+ allow_null=True,
+ allow_blank=True)
+ ipAddresses = IpAddresseSerializer(
+ help_text="List of IP addresses to assign to the CP instance. \
+ Each entry represents IP address data for fixed or dynamic IP address assignment per subnet.",
+ many=True,
+ required=False,
+ allow_null=True)
diff --git a/lcm/lcm/nf/serializers/vnf_ext_cp_config.py b/lcm/lcm/nf/serializers/vnf_ext_cp_config.py
new file mode 100644
index 00000000..b9fedf0a
--- /dev/null
+++ b/lcm/lcm/nf/serializers/vnf_ext_cp_config.py
@@ -0,0 +1,38 @@
+# 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_data import CpProtocolDataSerializer
+
+
+class VnfExtCpConfigSerializer(serializers.Serializer):
+ cpInstanceId = serializers.CharField(
+ help_text="Identifier of the external CP instance to which this set of configuration parameters is requested to be applied. \
+ Shall be present if this instance has already been created.",
+ max_length=255,
+ required=False,
+ allow_null=True,
+ allow_blank=True)
+ linkPortId = serializers.CharField(
+ help_text="Identifier of a pre-configured link port to which the external CP will be associated.",
+ max_length=255,
+ required=False,
+ allow_null=True,
+ allow_blank=True)
+ cpProtocolData = CpProtocolDataSerializer(
+ help_text="Parameters for configuring the network protocols on the link port that connects the CP to a VL.",
+ many=True,
+ required=False,
+ allow_null=True)