tools (async_trigger): new asyncReturnPoint method

This commit is contained in:
Goffi 2021-05-05 15:37:33 +02:00
commit 6e6bc64eab

View file

@ -52,3 +52,18 @@ class TriggerManager(sync_trigger.TriggerManager):
except sync_trigger.SkipOtherTriggers:
break
defer.returnValue(True)
async def asyncReturnPoint(self, point_name, *args, **kwargs):
"""Async version of returnPoint"""
if point_name not in self.__triggers:
return True
for priority, trigger in self.__triggers[point_name]:
try:
cont, ret_value = await utils.asDeferred(trigger, *args, **kwargs)
if not cont:
return False, ret_value
except sync_trigger.SkipOtherTriggers:
break
return True, None