def format_error(error): try: if isinstance(error, GraphQLLocatedError): return format_located_error(error) except Exception as error: return GraphQLView.format_error(error) else: return GraphQLView.format_error(error)
def format_located_error(error): if isinstance(error.original_error, GraphQLLocatedError): return format_located_error(error.original_error) if isinstance(error.original_error, ZoasError): return { "message": error.original_error.message, "code": error.original_error.code, } return GraphQLView.format_error(error)
def format_error(error): if hasattr(error, 'original_error') and error.original_error: formatted = {"message": str(error.original_error)} if isinstance(error.original_error, UnavailableError): formatted['code'] = 503 elif isinstance(error.original_error, ForbiddenActionError): formatted['code'] = 403 elif isinstance(error.original_error, ConstraintViolationError): formatted['code'] = 422 elif isinstance(error.original_error, ConflictingDataError): formatted['code'] = 409 elif isinstance(error.original_error, InvalidMutationRequestError): formatted['code'] = 422 elif isinstance(error.original_error, UnableToDeleteError): formatted['code'] = 422 elif isinstance(error.original_error, UnknownDataError): formatted['code'] = 500 return formatted return GraphQLView.format_error(error)
def format_error(error): if isinstance(error, Exception): print_exception(type(error), error, error.__traceback__) return GraphQLView.format_error(error)