88from cadence ._internal .activity ._context import _Context , _SyncContext
99from cadence .activity import ActivityInfo , ActivityDefinition , ExecutionStrategy
1010from cadence .api .v1 .common_pb2 import Failure
11- from cadence .api .v1 .service_worker_pb2 import PollForActivityTaskResponse , RespondActivityTaskFailedRequest , \
12- RespondActivityTaskCompletedRequest
11+ from cadence .api .v1 .service_worker_pb2 import (
12+ PollForActivityTaskResponse ,
13+ RespondActivityTaskFailedRequest ,
14+ RespondActivityTaskCompletedRequest ,
15+ )
1316from cadence .client import Client
1417
1518_logger = getLogger (__name__ )
1619
20+
1721class ActivityExecutor :
18- def __init__ (self , client : Client , task_list : str , identity : str , max_workers : int , registry : Callable [[str ], ActivityDefinition ]):
22+ def __init__ (
23+ self ,
24+ client : Client ,
25+ task_list : str ,
26+ identity : str ,
27+ max_workers : int ,
28+ registry : Callable [[str ], ActivityDefinition ],
29+ ):
1930 self ._client = client
2031 self ._data_converter = client .data_converter
2132 self ._registry = registry
2233 self ._identity = identity
2334 self ._task_list = task_list
24- self ._thread_pool = ThreadPoolExecutor (max_workers = max_workers ,
25- thread_name_prefix = f'{ task_list } -activity-' )
35+ self ._thread_pool = ThreadPoolExecutor (
36+ max_workers = max_workers , thread_name_prefix = f"{ task_list } -activity-"
37+ )
2638
2739 async def execute (self , task : PollForActivityTaskResponse ):
2840 try :
@@ -46,27 +58,33 @@ def _create_context(self, task: PollForActivityTaskResponse) -> _Context:
4658 else :
4759 return _SyncContext (self ._client , info , activity_def , self ._thread_pool )
4860
49- async def _report_failure (self , task : PollForActivityTaskResponse , error : Exception ):
61+ async def _report_failure (
62+ self , task : PollForActivityTaskResponse , error : Exception
63+ ):
5064 try :
51- await self ._client .worker_stub .RespondActivityTaskFailed (RespondActivityTaskFailedRequest (
52- task_token = task .task_token ,
53- failure = _to_failure (error ),
54- identity = self ._identity ,
55- ))
65+ await self ._client .worker_stub .RespondActivityTaskFailed (
66+ RespondActivityTaskFailedRequest (
67+ task_token = task .task_token ,
68+ failure = _to_failure (error ),
69+ identity = self ._identity ,
70+ )
71+ )
5672 except Exception :
57- _logger .exception (' Exception reporting activity failure' )
73+ _logger .exception (" Exception reporting activity failure" )
5874
5975 async def _report_success (self , task : PollForActivityTaskResponse , result : Any ):
60- as_payload = await self ._data_converter .to_data ([result ])
76+ as_payload = self ._data_converter .to_data ([result ])
6177
6278 try :
63- await self ._client .worker_stub .RespondActivityTaskCompleted (RespondActivityTaskCompletedRequest (
64- task_token = task .task_token ,
65- result = as_payload ,
66- identity = self ._identity ,
67- ))
79+ await self ._client .worker_stub .RespondActivityTaskCompleted (
80+ RespondActivityTaskCompletedRequest (
81+ task_token = task .task_token ,
82+ result = as_payload ,
83+ identity = self ._identity ,
84+ )
85+ )
6886 except Exception :
69- _logger .exception (' Exception reporting activity complete' )
87+ _logger .exception (" Exception reporting activity complete" )
7088
7189 def _create_info (self , task : PollForActivityTaskResponse ) -> ActivityInfo :
7290 return ActivityInfo (
0 commit comments