aboutsummaryrefslogtreecommitdiffstats
path: root/catalog/packages/serializers/vnf_pkg_notifications.py
diff options
context:
space:
mode:
Diffstat (limited to 'catalog/packages/serializers/vnf_pkg_notifications.py')
-rw-r--r--catalog/packages/serializers/vnf_pkg_notifications.py50
1 files changed, 41 insertions, 9 deletions
diff --git a/catalog/packages/serializers/vnf_pkg_notifications.py b/catalog/packages/serializers/vnf_pkg_notifications.py
index ee2b99c..0c1b395 100644
--- a/catalog/packages/serializers/vnf_pkg_notifications.py
+++ b/catalog/packages/serializers/vnf_pkg_notifications.py
@@ -142,20 +142,17 @@ class PkgmLinksSerializer(serializers.Serializer):
)
-class PkgNotificationSerializer(serializers.Serializer):
+class PkgChangeNotificationSerializer(serializers.Serializer):
id = serializers.CharField(
help_text="Identifier of this notification.",
required=True,
allow_null=False
)
- notificationTypes = serializers.ListField(
- child=serializers.ChoiceField(
- required=True,
- choices=NOTIFICATION_TYPES
- ),
+ notificationTypes = serializers.ChoiceField(
help_text="Discriminator for the different notification types.",
- allow_null=True,
- required=False
+ choices=["VnfPackageChangeNotification"],
+ required=True,
+ allow_null=False
)
subscriptionId = serializers.CharField(
help_text="Identifier of the subscription that this notification relates to.",
@@ -176,7 +173,7 @@ class PkgNotificationSerializer(serializers.Serializer):
changeType = serializers.ChoiceField(
help_text="The type of change of the VNF package.",
choices=PackageChangeType,
- required=False,
+ required=True,
allow_null=False
)
operationalState = serializers.ChoiceField(
@@ -196,3 +193,38 @@ class PkgNotificationSerializer(serializers.Serializer):
required=True,
allow_null=False
)
+
+
+class PkgOnboardingNotificationSerializer(serializers.Serializer):
+ id = serializers.CharField(
+ help_text="Identifier of this notification.",
+ required=True,
+ allow_null=False
+ )
+ notificationTypes = serializers.ChoiceField(
+ help_text="Discriminator for the different notification types.",
+ choices=["VnfPackageOnboardingNotification"],
+ required=True,
+ allow_null=False
+ )
+ subscriptionId = serializers.CharField(
+ help_text="Identifier of the subscription that this notification relates to.",
+ required=True,
+ allow_null=False
+ )
+ vnfPkgId = serializers.UUIDField(
+ help_text="Identifier of the VNF package.",
+ required=True,
+ allow_null=False
+ )
+ vnfdId = serializers.UUIDField(
+ help_text="This identifier, which is managed by the VNF provider, "
+ "identifies the VNF package and the VNFD in a globally unique way.",
+ required=True,
+ allow_null=False
+ )
+ _links = PkgmLinksSerializer(
+ help_text="Links to resources related to this resource.",
+ required=True,
+ allow_null=False
+ )