from coded_exceptions import CodedException
[docs]class YawfException(CodedException):
pass
[docs]class WorkflowNotLoadedError(YawfException):
pass
[docs]class WorkflowAlreadyRegisteredError(YawfException):
pass
[docs]class OldStateInconsistenceError(YawfException):
pass
[docs]class IllegalStateError(YawfException):
pass
[docs]class UnhandledMessageError(YawfException):
@property
def context(self):
return {'unhandled': self.args[0]}
[docs]class WrongHandlerResultError(YawfException):
pass
[docs]class PermissionDeniedError(YawfException):
pass
[docs]class ResourcePermissionDeniedError(PermissionDeniedError):
pass
[docs]class MessageValidationError(YawfException):
code = 'yawf_validation_error'
def __init__(self, validator):
self.validator = validator
@property
def context(self):
return self.validator.errors
[docs]class CreateValidationError(MessageValidationError):
pass
[docs]class MessageSpecNotRegisteredError(YawfException):
pass
[docs]class GroupPathEmptyError(YawfException):
pass
[docs]class MessageIgnored(YawfException):
@property
def context(self):
message = self.args[0]
return {"message_id": message.id,
"message_params": message.params}
[docs]class NoAvailableMessagesError(YawfException):
pass
[docs]class ResourceNotFoundError(YawfException):
pass
[docs]class ConcurrentRevisionUpdate(YawfException):
pass