X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=o2ims%2Fadapter%2Focloud_repository.py;h=bd147221092135f7c703ad51e97eff1f8a9cedf5;hb=refs%2Fchanges%2F28%2F7528%2F1;hp=4880fa164b7352e9110d015071572e8ee0b436cc;hpb=02e9f39bd6232f883f022731b1a141b8a6413aba;p=pti%2Fo2.git diff --git a/o2ims/adapter/ocloud_repository.py b/o2ims/adapter/ocloud_repository.py index 4880fa1..bd14722 100644 --- a/o2ims/adapter/ocloud_repository.py +++ b/o2ims/adapter/ocloud_repository.py @@ -17,7 +17,8 @@ from typing import List from o2ims.domain import ocloud, subscription_obj from o2ims.domain.ocloud_repo import OcloudRepository, ResourceTypeRepository,\ ResourcePoolRepository, ResourceRepository, DeploymentManagerRepository -from o2ims.domain.subscription_repo import SubscriptionRepository +from o2ims.domain.subscription_repo import SubscriptionRepository, \ + RegistrationRepository from o2common.helper import o2logging logger = o2logging.get_logger(__name__) @@ -159,3 +160,26 @@ class SubscriptionSqlAlchemyRepository(SubscriptionRepository): def _delete(self, subscription_id): self.session.query(subscription_obj.Subscription).filter_by( subscriptionId=subscription_id).delete() + + +class RegistrationSqlAlchemyRepository(RegistrationRepository): + def __init__(self, session): + super().__init__() + self.session = session + + def _add(self, registration: subscription_obj.Registration): + self.session.add(registration) + + def _get(self, registration_id) -> subscription_obj.Registration: + return self.session.query(subscription_obj.Registration).filter_by( + registrationId=registration_id).first() + + def _list(self) -> List[subscription_obj.Registration]: + return self.session.query(subscription_obj.Registration) + + def _update(self, registration: subscription_obj.Registration): + self.session.add(registration) + + def _delete(self, registration_id): + self.session.query(subscription_obj.Registration).filter_by( + registrationId=registration_id).delete()