forked from Support/sp-hydra-veil-gui
18 lines
636 B
Python
Executable file
18 lines
636 B
Python
Executable file
from core.models.Result import Result, ResultError
|
|
|
|
|
|
def result_from_exception(exception: Exception, error_type: ResultError = ResultError.UNKNOWN) -> Result:
|
|
message = str(exception) or type(exception).__name__
|
|
return Result(valid=False, error_type=error_type, message=message)
|
|
|
|
|
|
def result_from_payload(payload) -> Result:
|
|
if isinstance(payload, Result):
|
|
return payload
|
|
if isinstance(payload, Exception):
|
|
return result_from_exception(payload)
|
|
return Result(
|
|
valid=False,
|
|
error_type=ResultError.UNKNOWN,
|
|
message=str(payload) or 'The operation could not be completed.',
|
|
)
|