krrood.ormatic.exceptions#

Exceptions#

NoGenericError

Exception raised when the original class for a DataAccessObject subclass cannot

NoDAOFoundError

Represents an error raised when no DAO (Data Access Object) class is found for a given class.

NoDAOFoundDuringParsingError

Represents an error raised when no DAO (Data Access Object) class is found for a given class.

UnsupportedRelationshipError

Raised when a relationship direction is not supported by the ORM mapping.

UncallableFunction

Exception raised when anonymous functions are reconstructed and then called.

Module Contents#

exception krrood.ormatic.exceptions.NoGenericError#

Bases: krrood.utils.DataclassException, TypeError

Exception raised when the original class for a DataAccessObject subclass cannot be determined.

This exception is typically raised when a DataAccessObject subclass has not been parameterized properly, which prevents identifying the original class associated with it.

clazz: Type#
exception krrood.ormatic.exceptions.NoDAOFoundError#

Bases: krrood.utils.DataclassException, TypeError

Represents an error raised when no DAO (Data Access Object) class is found for a given class.

This exception is typically used when an attempt to convert a class into a corresponding DAO fails. It provides information about the class and the DAO involved.

obj: Any#

The class that no dao was found for

exception krrood.ormatic.exceptions.NoDAOFoundDuringParsingError(obj: Any, dao: Type, relationship: sqlalchemy.orm.RelationshipProperty = None)#

Bases: NoDAOFoundError

Represents an error raised when no DAO (Data Access Object) class is found for a given class.

This exception is typically used when an attempt to convert a class into a corresponding DAO fails. It provides information about the class and the DAO involved.

dao: Type#

The DAO class that tried to convert the cls to a DAO if any.

relationship: sqlalchemy.orm.RelationshipProperty#

The relationship that tried to create the DAO.

message = 'Class Uninferable does not have a DAO. This happened when trying to create a dao for...#
exception krrood.ormatic.exceptions.UnsupportedRelationshipError#

Bases: krrood.utils.DataclassException, ValueError

Raised when a relationship direction is not supported by the ORM mapping.

This error indicates that the relationship configuration could not be interpreted into a domain mapping.

relationship: sqlalchemy.orm.RelationshipProperty#
exception krrood.ormatic.exceptions.UncallableFunction#

Bases: NotImplementedError

Exception raised when anonymous functions are reconstructed and then called.

function_mapping: krrood.ormatic.data_access_objects.alternative_mappings.FunctionMapping#

The mapping that was used to reconstruct the function.