選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 
 
 
 
 

110 行
3.5 KiB

  1. # Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
  2. # License: MIT. See LICENSE
  3. # BEWARE don't put anything in this file except exceptions
  4. from werkzeug.exceptions import NotFound
  5. class SiteNotSpecifiedError(Exception):
  6. def __init__(self, *args, **kwargs):
  7. self.message = "Please specify --site sitename"
  8. super(Exception, self).__init__(self.message)
  9. class ValidationError(Exception):
  10. http_status_code = 417
  11. class AuthenticationError(Exception):
  12. http_status_code = 401
  13. class SessionExpired(Exception):
  14. http_status_code = 401
  15. class PermissionError(Exception):
  16. http_status_code = 403
  17. class DoesNotExistError(ValidationError):
  18. http_status_code = 404
  19. class PageDoesNotExistError(ValidationError):
  20. http_status_code = 404
  21. class NameError(Exception):
  22. http_status_code = 409
  23. class OutgoingEmailError(Exception):
  24. http_status_code = 501
  25. class SessionStopped(Exception):
  26. http_status_code = 503
  27. class UnsupportedMediaType(Exception):
  28. http_status_code = 415
  29. class RequestToken(Exception):
  30. http_status_code = 200
  31. class Redirect(Exception):
  32. http_status_code = 301
  33. class CSRFTokenError(Exception):
  34. http_status_code = 400
  35. class TooManyRequestsError(Exception):
  36. http_status_code = 429
  37. class ImproperDBConfigurationError(Exception):
  38. """
  39. Used when frappe detects that database or tables are not properly
  40. configured
  41. """
  42. def __init__(self, reason, msg=None):
  43. if not msg:
  44. msg = "MariaDb is not properly configured"
  45. super(ImproperDBConfigurationError, self).__init__(msg)
  46. self.reason = reason
  47. class DuplicateEntryError(NameError):pass
  48. class DataError(ValidationError): pass
  49. class UnknownDomainError(Exception): pass
  50. class MappingMismatchError(ValidationError): pass
  51. class InvalidStatusError(ValidationError): pass
  52. class MandatoryError(ValidationError): pass
  53. class NonNegativeError(ValidationError): pass
  54. class InvalidSignatureError(ValidationError): pass
  55. class RateLimitExceededError(ValidationError): pass
  56. class CannotChangeConstantError(ValidationError): pass
  57. class CharacterLengthExceededError(ValidationError): pass
  58. class UpdateAfterSubmitError(ValidationError): pass
  59. class LinkValidationError(ValidationError): pass
  60. class CancelledLinkError(LinkValidationError): pass
  61. class DocstatusTransitionError(ValidationError): pass
  62. class TimestampMismatchError(ValidationError): pass
  63. class EmptyTableError(ValidationError): pass
  64. class LinkExistsError(ValidationError): pass
  65. class InvalidEmailAddressError(ValidationError): pass
  66. class InvalidNameError(ValidationError): pass
  67. class InvalidPhoneNumberError(ValidationError): pass
  68. class TemplateNotFoundError(ValidationError): pass
  69. class UniqueValidationError(ValidationError): pass
  70. class AppNotInstalledError(ValidationError): pass
  71. class IncorrectSitePath(NotFound): pass
  72. class ImplicitCommitError(ValidationError): pass
  73. class RetryBackgroundJobError(Exception): pass
  74. class DocumentLockedError(ValidationError): pass
  75. class CircularLinkingError(ValidationError): pass
  76. class SecurityException(Exception): pass
  77. class InvalidColumnName(ValidationError): pass
  78. class IncompatibleApp(ValidationError): pass
  79. class InvalidDates(ValidationError): pass
  80. class DataTooLongException(ValidationError): pass
  81. class FileAlreadyAttachedException(Exception): pass
  82. class DocumentAlreadyRestored(ValidationError): pass
  83. class AttachmentLimitReached(ValidationError): pass
  84. # OAuth exceptions
  85. class InvalidAuthorizationHeader(CSRFTokenError): pass
  86. class InvalidAuthorizationPrefix(CSRFTokenError): pass
  87. class InvalidAuthorizationToken(CSRFTokenError): pass
  88. class InvalidDatabaseFile(ValidationError): pass
  89. class ExecutableNotFound(FileNotFoundError): pass