Fix INF-328 and INF-373 the resource change and update issue
[pti/o2.git] / o2ims / service / auditor / pserver_port_handler.py
index 1faa08a..402085b 100644 (file)
 # pylint: disable=unused-argument
 from __future__ import annotations
 import uuid
-# import json
 
-from o2ims.domain import commands, events
-from o2ims.domain.stx_object import StxGenericModel
 from o2common.service.unit_of_work import AbstractUnitOfWork
-from o2ims.domain.resource_type import MismatchedModel
-from o2ims.domain.ocloud import Resource, ResourceType
+from o2ims.domain import commands, events
+from o2ims.domain.ocloud import ResourceType
 from o2ims.domain.subscription_obj import NotificationEventEnum
+from o2ims.service.auditor.pserver_res_handler import is_outdated, \
+    create_by, update_by
 
 from o2common.helper import o2logging
 logger = o2logging.get_logger(__name__)
 
 
-class InvalidResourceType(Exception):
-    pass
-
-
 def update_pserver_port(
     cmd: commands.UpdatePserverIfPort,
     uow: AbstractUnitOfWork
@@ -96,41 +91,3 @@ def update_pserver_port(
             logger.info("Update the port of pserver interface: " + stxobj.id
                         + ", name: " + stxobj.name)
         uow.commit()
-
-
-def is_outdated(resource: Resource, stxobj: StxGenericModel):
-    return True if resource.hash != stxobj.hash else False
-
-
-def create_by(stxobj: StxGenericModel, parent: Resource, resourcetype_id: str)\
-        -> Resource:
-    # content = json.loads(stxobj.content)
-    resourcetype_id = resourcetype_id
-    resourcepool_id = parent.resourcePoolId
-    parent_id = parent.resourceId
-    gAssetId = ''  # TODO: global ID
-    description = "%s : A port resource of the interface"\
-        % stxobj.name
-    resource = Resource(stxobj.id, resourcetype_id, resourcepool_id,
-                        parent_id, gAssetId, stxobj.content, description)
-    resource.createtime = stxobj.createtime
-    resource.updatetime = stxobj.updatetime
-    resource.hash = stxobj.hash
-
-    return resource
-
-
-def update_by(target: Resource, stxobj: StxGenericModel,
-              parentid: str) -> None:
-    if target.resourceId != stxobj.id:
-        raise MismatchedModel("Mismatched Id")
-    target.createtime = stxobj.createtime
-    target.updatetime = stxobj.updatetime
-    target.hash = stxobj.hash
-    target.version_number = target.version_number + 1
-    target.events.append(events.ResourceChanged(
-        id=stxobj.id,
-        resourcePoolId=target.resourcePoolId,
-        notificationEventType=NotificationEventEnum.MODIFY,
-        updatetime=stxobj.updatetime
-    ))