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')