in sdk/python/teaclave.py [0:0]
def get_task_result(self, task_id: str):
self.check_metadata()
self.check_channel()
request = GetTaskRequest(self.metadata, task_id)
while True:
try:
time.sleep(1)
response = self.call_method(request)
if response.status == TaskStatus.Finished:
break
elif response.status == TaskStatus.Canceled:
raise TeaclaveException("Task Canceled, Error: " +
response.result.Err.reason)
elif response.status == TaskStatus.Failed:
raise TeaclaveException("Task Failed, Error: " +
response.result.Err.reason)
except Exception as e:
reason = str(e)
raise TeaclaveException(
f"Failed to get task result ({reason})")
return response.result.Ok.return_value