Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions gooddata-sdk/gooddata_sdk/compute/model/execution.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
from attrs import define, field
from gooddata_api_client import models
from gooddata_api_client.model.afm import AFM
from gooddata_api_client.model.afm_cancel_tokens import AfmCancelTokens
from gooddata_api_client.model.result_spec import ResultSpec

from gooddata_sdk.client import GoodDataApiClient
Expand Down Expand Up @@ -360,6 +361,16 @@ def read_result(self, limit: Union[int, list[int]], offset: Union[None, int, lis
)
return ExecutionResult(execution_result)

def cancel(self) -> None:
"""
Cancels the execution backing this execution result.
"""
if self.cancel_token is not None:
self._api_client.actions_api.cancel_executions(
self._workspace_id,
AfmCancelTokens({self.result_id: self.cancel_token}),
)

def __str__(self) -> str:
return self.__repr__()

Expand Down Expand Up @@ -437,6 +448,12 @@ def get_labels_and_formats(self) -> tuple[dict[str, str], dict[str, str]]:
def read_result(self, limit: Union[int, list[int]], offset: Union[None, int, list[int]] = None) -> ExecutionResult:
return self.bare_exec_response.read_result(limit, offset)

def cancel(self) -> None:
"""
Cancels the execution.
"""
self.bare_exec_response.cancel()

def __str__(self) -> str:
return self.__repr__()

Expand Down
Loading