sagace.exceptions.domain package

Submodules

sagace.exceptions.domain.api_request_error module


Descrição:

Este módulo define classes de exceções para tratamento de erros na camada de domínio do sistema SAGACE. A classe APIRequestError representa erros de requisições feitas à API, garantindo um tratamento estruturado para falhas durante chamadas externas.

Principais funcionalidades:

  • Define uma exceção específica para falhas em requisições à API.

  • Herdada de DomainError, garantindo consistência no tratamento de erros do domínio.

Princípios de Design Aplicados:

  • Single Responsibility Principle (SRP - SOLID): Cada classe tem uma única responsabilidade clara.

  • Open/Closed Principle (OCP - SOLID): APIRequestError pode ser estendida sem modificar seu código-fonte.

  • Encapsulamento: Centraliza a manipulação de mensagens de erro dentro da exceção.

Classes:

  • APIRequestError: Representa erros em requisições à API.

Exemplo de uso:

from sagace.exceptions import APIRequestError

try:
    raise APIRequestError(500, "Erro interno no servidor")
except APIRequestError as e:
    print(f"Erro capturado: {e}")

Autor: Diego Yosiura Última Atualização: 27/02/2025 16:46 Criado em: 27/02/2025 16:46 Copyright: (c) Ampere Consultoria Ltda Projeto Original: sagace-v2-package IDE: PyCharm

exception sagace.exceptions.domain.api_request_error.APIRequestError(status_code: int, error: str)[source]

Bases: DomainError

Exceção para erros em requisições à API.

Esta classe é usada para capturar erros retornados por chamadas de API, fornecendo uma estrutura padronizada para tratamento dessas falhas.

Princípios aplicados: - Single Responsibility Principle (S - SOLID): Responsável apenas por representar erros de requisição à API. - Encapsulamento: Centraliza a manipulação das mensagens de erro.

Parameters:
  • status_code (int) – Código de status HTTP retornado pela API.

  • error (str) – Mensagem de erro retornada pela API.

sagace.exceptions.domain.domain_error module


Descrição:

Este módulo define classes de exceções para tratamento de erros na camada de domínio do sistema SAGACE. A classe DomainError serve como exceção base para erros relacionados ao domínio da aplicação, permitindo a criação de exceções especializadas de forma estruturada.

Principais funcionalidades:

  • Define uma exceção base para o domínio da aplicação.

  • Pode ser herdada por outras exceções específicas do domínio.

Princípios de Design Aplicados:

  • Single Responsibility Principle (SRP - SOLID): Cada classe tem uma única responsabilidade clara.

  • Open/Closed Principle (OCP - SOLID): DomainError pode ser estendida sem modificar seu código-fonte.

  • Encapsulamento: Centraliza a manipulação de mensagens de erro dentro da exceção base.

Classes:

  • DomainError: Exceção base para erros no domínio.

Exemplo de uso:

from sagace.exceptions import DomainError

class CustomDomainError(DomainError):
    # Exceção específica do domínio da aplicação.
    pass

try:
    raise CustomDomainError("Erro específico no domínio.")
except DomainError as e:
    print(f"Erro capturado: {e}")

Autor: Diego Yosiura Última Atualização: 27/02/2025 16:05 Criado em: 27/02/2025 16:05 Copyright: (c) Ampere Consultoria Ltda Projeto Original: sagace-v2-package IDE: PyCharm

exception sagace.exceptions.domain.domain_error.DomainError[source]

Bases: Exception

Exceção base para erros no domínio.

Esta classe deve ser utilizada como base para definir novas exceções específicas do domínio.

Princípios aplicados: - Single Responsibility Principle (S - SOLID): Representa exclusivamente erros do domínio. - Open/Closed Principle (O - SOLID): Pode ser estendida para criar novas exceções sem modificar seu código-fonte.

sagace.exceptions.domain.permission_denied_error module


Module: Permission Errors

Este módulo define a exceção PermissionDeniedError, que é utilizada para indicar falhas de autenticação de usuário.

Obs.:

  • Segue os princípios da Clean Architecture ao separar claramente as exceções do domínio da aplicação.

  • Aplica o princípio Liskov Substitution Principle (LSP), pois a exceção PermissionDeniedError estende DomainError sem alterar seu comportamento esperado.

Author: @diego.yosiura Last Update: 27/02/2025 16:45 Created: 27/02/2025 16:45 Copyright: (c) Ampere Consultoria Ltda Original Project: sagace-v2-package IDE: PyCharm

exception sagace.exceptions.domain.permission_denied_error.PermissionDeniedError[source]

Bases: DomainError

Exceção que representa erro de permissão negada ao autenticar um usuário.

Esta exceção deve ser lançada quando um usuário tenta acessar um recurso para o qual não tem permissão adequada.

Herda de:

DomainError: Classe base para erros do domínio da aplicação.

Exemplo de uso:
>>> raise PermissionDeniedError()

sagace.exceptions.domain.token_expired_error module


Module: Token Expiration Error

Este módulo define a exceção TokenExpiredError, utilizada para indicar a expiração de um token de autenticação.

Obs.:

  • Segue os princípios da Clean Architecture, separando a lógica de erro do domínio da aplicação.

  • Aplica o princípio Liskov Substitution Principle (LSP), pois TokenExpiredError estende DomainError sem modificar o comportamento esperado da classe base.

Author: @diego.yosiura Last Update: 27/02/2025 16:46 Created: 27/02/2025 16:46 Copyright: (c) Ampere Consultoria Ltda Original Project: sagace-v2-package IDE: PyCharm

exception sagace.exceptions.domain.token_expired_error.TokenExpiredError[source]

Bases: DomainError

Exceção que representa um erro de autenticação devido à expiração do token.

Esta exceção deve ser lançada sempre que um token de autenticação não for mais válido, exigindo que o usuário obtenha um novo token antes de continuar.

Herda de:

DomainError: Classe base para erros do domínio da aplicação.

Exemplo de uso:
>>> raise TokenExpiredError()

Module contents


Description:

Obs.:

Author: @diego.yosiura Last Update: 27/02/2025 16:03 Created: 27/02/2025 16:03 Copyright: (c) Ampere Consultoria Ltda Original Project: sagace-v2-package IDE: PyCharm