Fix INF-344 resourceType fields on alarmDictionary
[pti/o2.git] / o2ims / views / ocloud_route.py
index af5e8c6..f6f3b7a 100644 (file)
@@ -17,7 +17,8 @@ from flask_restx import Resource, reqparse
 
 from o2common.service.messagebus import MessageBus
 from o2common.views.pagination_route import link_header, PAGE_PARAM
-from o2common.views.route_exception import NotFoundException
+from o2common.views.route_exception import NotFoundException, \
+    BadRequestException
 from o2ims.domain import ocloud
 from o2ims.views import ocloud_view
 from o2ims.views.api_ns import api_ims_inventory as api_ims_inventory_v1
@@ -166,10 +167,10 @@ class ResourceTypeGetRouter(Resource):
     @api_ims_inventory_v1.marshal_with(model)
     def get(self, resourceTypeID):
         result = ocloud_view.resource_type_one(resourceTypeID, bus.uow)
-        if result is not None:
-            return result
-        raise NotFoundException("Resource type {} doesn't exist".format(
-            resourceTypeID))
+        if not result:
+            raise NotFoundException("Resource type {} doesn't exist".format(
+                resourceTypeID))
+        return result
 
 
 # ----------  ResourcePools ---------- #
@@ -517,6 +518,10 @@ class SubscriptionsListRouter(Resource):
         mask='{subscriptionId,callback,consumerSubscriptionId,filter}')
     def post(self):
         data = api_ims_inventory_v1.payload
+        callback = data.get('callback', None)
+        if not callback:
+            raise BadRequestException('The callback parameter is required')
+
         result = ocloud_view.subscription_create(data, bus.uow)
         return result, 201