Source code for ocdsmerge.exceptions
[docs]
class OCDSMergeError(Exception):
"""Base class for exceptions from within this package."""
[docs]
class MissingDateKeyError(OCDSMergeError, KeyError):
"""Raised when a release is missing a 'date' key."""
def __init__(self, key: str, message: str):
self.key = key
self.message = message
def __str__(self) -> str:
return str(self.message)
[docs]
class NonObjectReleaseError(OCDSMergeError, TypeError):
"""Raised when a release is not an object."""
[docs]
class NullDateValueError(OCDSMergeError, TypeError):
"""Raised when a release has a null 'date' value."""
[docs]
class NonStringDateValueError(OCDSMergeError, TypeError):
"""Raised when a release has a non-string 'date' value."""
[docs]
class InconsistentTypeError(OCDSMergeError, TypeError):
"""Raised when a path is a literal, an object, and/or an array in different releases."""
[docs]
class OCDSMergeWarning(UserWarning):
"""Base class for warnings from within this package."""
[docs]
class DuplicateIdValueWarning(OCDSMergeWarning):
"""Used when at least two objects in the same array have the same value for the 'id' field."""