import uuid\r
\r
from o2common.service import unit_of_work\r
-from o2ims.views.ocloud_dto import SubscriptionDTO\r
-from o2ims.domain.subscription_obj import Subscription\r
+from o2ims.views.ocloud_dto import RegistrationDTO, SubscriptionDTO\r
+from o2ims.domain.subscription_obj import Registration, Subscription\r
\r
\r
def oclouds(uow: unit_of_work.AbstractUnitOfWork):\r
uow.subscriptions.delete(subscriptionId)\r
uow.commit()\r
return True\r
+\r
+\r
+def registrations(uow: unit_of_work.AbstractUnitOfWork):\r
+ with uow:\r
+ li = uow.registrations.list()\r
+ return [r.serialize() for r in li]\r
+\r
+\r
+def registration_one(registrationId: str,\r
+ uow: unit_of_work.AbstractUnitOfWork):\r
+ with uow:\r
+ first = uow.registrations.get(registrationId)\r
+ return first.serialize() if first is not None else None\r
+\r
+\r
+def registration_create(registrationDto: RegistrationDTO.registration,\r
+ uow: unit_of_work.AbstractUnitOfWork):\r
+\r
+ reg_uuid = str(uuid.uuid4())\r
+ registration = Registration(\r
+ reg_uuid, registrationDto['callback'])\r
+ with uow:\r
+ uow.registrations.add(registration)\r
+ uow.commit()\r
+ return {"registrationId": reg_uuid}\r
+\r
+\r
+def registration_delete(registrationId: str,\r
+ uow: unit_of_work.AbstractUnitOfWork):\r
+ with uow:\r
+ uow.registrations.delete(registrationId)\r
+ uow.commit()\r
+ return True\r