X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=o2ims%2Fviews%2Focloud_route.py;h=75d0df6364ed394b4b3bd17d6c211cdf2f276fc5;hb=26b17198615ace3334ebcfacbad9e08897e94826;hp=af5e8c6cf5a464a29c307b6c45c175997a138921;hpb=96181683c15de77aa7105ef6f610c82e122010f6;p=pti%2Fo2.git diff --git a/o2ims/views/ocloud_route.py b/o2ims/views/ocloud_route.py index af5e8c6..75d0df6 100644 --- a/o2ims/views/ocloud_route.py +++ b/o2ims/views/ocloud_route.py @@ -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 ---------- # @@ -261,6 +262,7 @@ class ResourcePoolGetRouter(Resource): # ---------- Resources ---------- # @api_ims_inventory_v1.route("/v1/resourcePools//resources") @api_ims_inventory_v1.param('resourcePoolID', 'ID of the resource pool') +@api_ims_inventory_v1.response(404, 'Resource pool not found') # @api_ims_inventory_v1.param('sort', 'sort by column name', # _in='query') # @api_ims_inventory_v1.param('per_page', 'The number of results per page ' + @@ -311,8 +313,10 @@ class ResourcesListRouter(Resource): if args.nextpage_opaque_marker is not None: kwargs['page'] = args.nextpage_opaque_marker kwargs['filter'] = args.filter if args.filter is not None else '' - ret = ocloud_view.resources(resourcePoolID, bus.uow, **kwargs) + if ret is None: + raise NotFoundException("Resources under {} doesn't exist".format( + resourcePoolID)) return link_header(request.full_path, ret) @@ -350,11 +354,11 @@ class ResourceGetRouter(Resource): @api_ims_inventory_v1.doc('Get resource') @api_ims_inventory_v1.marshal_with(model) def get(self, resourcePoolID, resourceID): - result = ocloud_view.resource_one(resourceID, bus.uow) - if result is not None: - return result - raise NotFoundException("Resource {} doesn't exist".format( - resourceID)) + result = ocloud_view.resource_one(resourceID, bus.uow, resourcePoolID) + if result is None: + raise NotFoundException("Resource {} doesn't exist".format( + resourceID)) + return result # ---------- DeploymentManagers ---------- # @@ -517,6 +521,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