def get_task_result()

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