Mercurial > libervia-backend
comparison sat/tools/async_trigger.py @ 4037:524856bd7b19
massive refactoring to switch from camelCase to snake_case:
historically, Libervia (SàT before) was using camelCase as allowed by PEP8 when using a
pre-PEP8 code, to use the same coding style as in Twisted.
However, snake_case is more readable and it's better to follow PEP8 best practices, so it
has been decided to move on full snake_case. Because Libervia has a huge codebase, this
ended with a ugly mix of camelCase and snake_case.
To fix that, this patch does a big refactoring by renaming every function and method
(including bridge) that are not coming from Twisted or Wokkel, to use fully snake_case.
This is a massive change, and may result in some bugs.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 08 Apr 2023 13:54:42 +0200 |
parents | e14847bf65c0 |
children |
comparison
equal
deleted
inserted
replaced
4036:c4464d7ae97b | 4037:524856bd7b19 |
---|---|
23 from . import trigger as sync_trigger | 23 from . import trigger as sync_trigger |
24 from . import utils | 24 from . import utils |
25 from twisted.internet import defer | 25 from twisted.internet import defer |
26 | 26 |
27 class TriggerManager(sync_trigger.TriggerManager): | 27 class TriggerManager(sync_trigger.TriggerManager): |
28 """This is a TriggerManager with an new asyncPoint method""" | 28 """This is a TriggerManager with an new async_point method""" |
29 | 29 |
30 @defer.inlineCallbacks | 30 @defer.inlineCallbacks |
31 def asyncPoint(self, point_name, *args, **kwargs): | 31 def async_point(self, point_name, *args, **kwargs): |
32 """This put a trigger point with potentially async Deferred | 32 """This put a trigger point with potentially async Deferred |
33 | 33 |
34 All the triggers for that point will be run | 34 All the triggers for that point will be run |
35 @param point_name: name of the trigger point | 35 @param point_name: name of the trigger point |
36 @param *args: args to transmit to trigger | 36 @param *args: args to transmit to trigger |
45 | 45 |
46 can_cancel = not kwargs.pop('triggers_no_cancel', False) | 46 can_cancel = not kwargs.pop('triggers_no_cancel', False) |
47 | 47 |
48 for priority, trigger in self.__triggers[point_name]: | 48 for priority, trigger in self.__triggers[point_name]: |
49 try: | 49 try: |
50 cont = yield utils.asDeferred(trigger, *args, **kwargs) | 50 cont = yield utils.as_deferred(trigger, *args, **kwargs) |
51 if can_cancel and not cont: | 51 if can_cancel and not cont: |
52 defer.returnValue(False) | 52 defer.returnValue(False) |
53 except sync_trigger.SkipOtherTriggers: | 53 except sync_trigger.SkipOtherTriggers: |
54 break | 54 break |
55 defer.returnValue(True) | 55 defer.returnValue(True) |
56 | 56 |
57 async def asyncReturnPoint( | 57 async def async_return_point( |
58 self, | 58 self, |
59 point_name: str, | 59 point_name: str, |
60 *args, **kwargs | 60 *args, **kwargs |
61 ) -> Tuple[bool, Any]: | 61 ) -> Tuple[bool, Any]: |
62 """Async version of returnPoint""" | 62 """Async version of return_point""" |
63 if point_name not in self.__triggers: | 63 if point_name not in self.__triggers: |
64 return True, None | 64 return True, None |
65 | 65 |
66 for priority, trigger in self.__triggers[point_name]: | 66 for priority, trigger in self.__triggers[point_name]: |
67 try: | 67 try: |
68 cont, ret_value = await utils.asDeferred(trigger, *args, **kwargs) | 68 cont, ret_value = await utils.as_deferred(trigger, *args, **kwargs) |
69 if not cont: | 69 if not cont: |
70 return False, ret_value | 70 return False, ret_value |
71 except sync_trigger.SkipOtherTriggers: | 71 except sync_trigger.SkipOtherTriggers: |
72 break | 72 break |
73 return True, None | 73 return True, None |