Add api_versions support; update model of ocloud, resourcepool, and resource
[pti/o2.git] / o2app / adapter / unit_of_work.py
index 37b30d3..93893e2 100644 (file)
@@ -21,7 +21,7 @@ from sqlalchemy.orm.session import Session
 from o2common.config import config
 from o2common.service.unit_of_work import AbstractUnitOfWork
 
-from o2ims.adapter import ocloud_repository
+from o2ims.adapter import ocloud_repository, alarm_repository
 from o2dms.adapter import dms_repository
 
 from o2common.helper import o2logging
@@ -57,8 +57,6 @@ class SqlAlchemyUnitOfWork(AbstractUnitOfWork):
             .ResourceSqlAlchemyRepository(self.session)
         self.subscriptions = ocloud_repository\
             .SubscriptionSqlAlchemyRepository(self.session)
-        self.configurations = ocloud_repository\
-            .ConfigurationSqlAlchemyRepository(self.session)
         self.deployment_managers = ocloud_repository\
             .DeploymentManagerSqlAlchemyRepository(self.session)
         self.nfdeployment_descs = dms_repository\
@@ -67,6 +65,15 @@ class SqlAlchemyUnitOfWork(AbstractUnitOfWork):
             .NfDeploymentSqlAlchemyRepository(self.session)
         self.ocloudvresources = dms_repository\
             .NfOCloudVResourceSqlAlchemyRepository(self.session)
+        self.alarm_event_records = alarm_repository\
+            .AlarmEventRecordSqlAlchemyRepository(self.session)
+        self.alarm_definitions = alarm_repository\
+            .AlarmDefinitionSqlAlchemyRepository(self.session)
+        self.alarm_subscriptions = alarm_repository\
+            .AlarmSubscriptionSqlAlchemyRepository(self.session)
+        self.alarm_probable_causes = alarm_repository\
+            .AlarmProbableCauseSqlAlchemyRepository(self.session)
+
         return super().__enter__()
 
     def __exit__(self, *args):
@@ -99,9 +106,6 @@ class SqlAlchemyUnitOfWork(AbstractUnitOfWork):
         for entry in self.subscriptions.seen:
             while hasattr(entry, 'events') and len(entry.events) > 0:
                 yield entry.events.pop(0)
-        for entry in self.configurations.seen:
-            while hasattr(entry, 'events') and len(entry.events) > 0:
-                yield entry.events.pop(0)
         for entry in self.nfdeployment_descs.seen:
             while hasattr(entry, 'events') and len(entry.events) > 0:
                 yield entry.events.pop(0)
@@ -111,3 +115,9 @@ class SqlAlchemyUnitOfWork(AbstractUnitOfWork):
         for entry in self.ocloudvresources.seen:
             while hasattr(entry, 'events') and len(entry.events) > 0:
                 yield entry.events.pop(0)
+        for entry in self.alarm_event_records.seen:
+            while hasattr(entry, 'events') and len(entry.events) > 0:
+                yield entry.events.pop(0)
+        for entry in self.alarm_subscriptions.seen:
+            while hasattr(entry, 'events') and len(entry.events) > 0:
+                yield entry.events.pop(0)