X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=o2ims%2Fviews%2Focloud_route.py;h=88b369ecc3d59268ac1d0e4e93e890c655beead3;hb=f3ce354b2e6c538b50ed990ba359d3af2283c901;hp=bb4e63fecde6f5e11698c430f5c365b8ecd2a414;hpb=6bc82510fcc73a6dc2f817caa2ce74b52daa345c;p=pti%2Fo2.git diff --git a/o2ims/views/ocloud_route.py b/o2ims/views/ocloud_route.py index bb4e63f..88b369e 100644 --- a/o2ims/views/ocloud_route.py +++ b/o2ims/views/ocloud_route.py @@ -12,17 +12,19 @@ # See the License for the specific language governing permissions and # limitations under the License. -import uuid from flask_restx import Resource -from o2ims.views import ocloud_view, api_ims_inventory_v1 -from o2common.config import config -from o2ims.domain.ocloud import Subscription +from o2common.service.messagebus import MessageBus +from o2ims.views import ocloud_view +from o2ims.views.api_ns import api_ims_inventory_v1 from o2ims.views.ocloud_dto import OcloudDTO, ResourceTypeDTO,\ ResourcePoolDTO, ResourceDTO, DeploymentManagerDTO, SubscriptionDTO -apibase = config.get_o2ims_api_base() +def configure_api_route(): + # Set global bus for resource + global bus + bus = MessageBus.get_instance() # ---------- OClouds ---------- # @@ -119,7 +121,9 @@ class ResourcesListRouter(Resource): @api_ims_inventory_v1.response(404, 'Resource not found') class ResourceGetRouter(Resource): - model = ResourceDTO.resource_get + # dto = ResourceDTO() + # model = dto.get_resource_get() + model = ResourceDTO.recursive_resource_mapping() @api_ims_inventory_v1.doc('Get resource') @api_ims_inventory_v1.marshal_with(model) @@ -180,12 +184,8 @@ class SubscriptionsListRouter(Resource): @api_ims_inventory_v1.marshal_with(post_resp, code=201) def post(self): data = api_ims_inventory_v1.payload - sub_uuid = str(uuid.uuid4()) - subscription = Subscription( - sub_uuid, data['callback'], data['consumerSubscriptionId'], - data['filter']) - ocloud_view.subscription_create(subscription, bus.uow) - return {"subscriptionId": sub_uuid}, 201 + result = ocloud_view.subscription_create(data, bus.uow) + return result, 201 @api_ims_inventory_v1.route("/subscriptions/") @@ -208,16 +208,5 @@ class SubscriptionGetDelRouter(Resource): @api_ims_inventory_v1.doc('Delete subscription by ID') @api_ims_inventory_v1.response(204, 'Subscription deleted') def delete(self, subscriptionID): - with bus.uow: - bus.uow.subscriptions.delete(subscriptionID) - bus.uow.commit() - return '', 204 - - -def configure_namespace(app, bus_new): - - # Set global bus for resource - global bus - bus = bus_new - - app.add_namespace(api_ims_inventory_v1, path=apibase) + result = ocloud_view.subscription_delete(subscriptionID, bus.uow) + return result, 204