Fix INF-344 resourceType fields on alarmDictionary
[pti/o2.git] / o2ims / views / ocloud_dto.py
index 14d9873..0a18664 100644 (file)
@@ -42,17 +42,35 @@ class OcloudDTO:
 
 
 class ResourceTypeDTO:
+    alarm_definition = api_ims_inventory_v1.model(
+        "AlarmDefinitionDto",
+        {
+            'alarmDefinitionId': fields.String,
+            'alarmName': fields.String,
+            'alarmLastChange': fields.String,
+            'alarmChangeType': fields.String,
+            'alarmDescription': fields.String,
+            'proposedRepairActions': fields.String,
+            'clearingType': fields.String,
+            'managementInterfaceId': fields.String,
+            'pkNotificationField': fields.String,
+            'alarmAdditionalFields': fields.String,
+        }
+
+    )
     alarm_dictionary = api_ims_inventory_v1.model(
         "AlarmDictionaryDto",
         {
             'id': fields.String,
             'alarmDictionaryVersion': fields.String,
-            'alarmDictionarySchemVersion': fields.String,
+            'alarmDictionarySchemaVersion': fields.String,
             'entityType': fields.String,
             'vendor': fields.String,
             'managementInterfaceId': fields.String,
             'pkNotificationField': fields.String,
-            'alarmDefinition': fields.String,
+            # 'alarmDefinition': fields.String,
+            'alarmDefinition': fields.List(fields.Nested(alarm_definition),
+                                           attribute='alarmDefinition'),
         }
     )
 
@@ -177,6 +195,11 @@ class DeploymentManagerDTO:
         'helmcli_kubeconfig': fields.String(attribute='helmcli_kubeconfig'),
     })
 
+    extensions = api_ims_inventory_v1.model("DeploymentManagerExtensions", {
+        'profileName': fields.String,
+        'profileData': fields.Nested(profile, False, True),
+    })
+
     deployment_manager_get = api_ims_inventory_v1.model(
         "DeploymentManagerGetDto",
         {
@@ -192,12 +215,10 @@ class DeploymentManagerDTO:
             # 'supportedLocations': fields.String,
             # 'capabilities': fields.String,
             # 'capacity': fields.String,
-            'profileName': fields.String,
-            'profileData': fields.Nested(profile, False, True),
-            'extensions': fields.String
+            'extensions': fields.Nested(extensions, True, True)
         },
         mask='{deploymentManagerId,name,description,oCloudId,serviceUri,' +\
-        'profileName,profileData}'
+        'extensions/profileName,extensions/profileData}'
     )
 
 
@@ -215,7 +236,7 @@ class SubscriptionDTO:
         mask='{subscriptionId,callback}'
     )
 
-    subscription = api_ims_inventory_v1.model(
+    subscription_create = api_ims_inventory_v1.model(
         "SubscriptionCreateDto",
         {
             'callback': fields.String(
@@ -224,11 +245,3 @@ class SubscriptionDTO:
             'filter': fields.String,
         }
     )
-
-    subscription_post_resp = api_ims_inventory_v1.model(
-        "SubscriptionCreatedRespDto",
-        {
-            'subscriptionId': fields.String(required=True,
-                                            description='Subscription ID'),
-        }
-    )