NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

tale.py (1081B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\behaviors\actions\tale.py
      2 import logging
      3 from behaviors.tasks import Task
      4 from ccpProfile import TimedFunction
      5 logger = logging.getLogger(__name__)
      6 
      7 class UpdateTaleContextForPersistedObject(Task):
      8 
      9     @TimedFunction('behaviors::actions::entities::UpdateTaleContextForPersistedObject::OnEnter')
     10     def OnEnter(self):
     11         self.SetStatusToSuccess()
     12         if self.context.get('myTaleId') is not None:
     13             return
     14         taleId = self._GetTaleIdFromTaleManager()
     15         if not taleId:
     16             self.SetStatusToFailed()
     17             logger.debug('Behavior: %s failed getting taleId from the DB', self.context.myItemId)
     18         self.context.myTaleId = taleId
     19 
     20     def _GetTaleIdFromTaleManager(self):
     21         taleManager = self._GetTaleManager()
     22         persistedObject = taleManager.GetTaleForPersistedObject(self.context.myItemId)
     23         if len(persistedObject):
     24             return persistedObject[0].taleID
     25 
     26     def _GetTaleManager(self):
     27         return sm.GetService('taleMgr')