Exceções - Yago-Captain/GeneralNotes GitHub Wiki

Diretório de Exceções

Nesta seção, exploramos o diretório de Exceções da aplicação, onde estão contidas todas as classes de exceção personalizadas utilizadas no sistema. As exceções desempenham um papel crucial no tratamento de erros e na comunicação de problemas específicos que podem ocorrer durante a execução do programa. Este diretório é responsável por organizar e manter todas as classes de exceção personalizadas, cada uma representando um tipo específico de erro ou condição inesperada.

Este diretório desempenha um papel fundamental na gestão de exceções e na comunicação de erros dentro do sistema, garantindo uma experiência de usuário mais informativa e amigável durante o uso da aplicação.

As exceções são uma parte fundamental do design de um sistema robusto e resiliente, pois permitem que os desenvolvedores capturem e lidem com falhas de forma controlada, mantendo a integridade e a estabilidade da aplicação. Portanto, o diretório de Exceptions desempenha um papel importante na estrutura do código-fonte, garantindo uma gestão eficaz de erros e exceções em toda a aplicação.

ErrorOnValidationException

A classe ErrorOnValidationException é uma subclasse que herda de MyGeneralNotesExceptions.

namespace MyGeneralNotes.Exceptions.ExceptionsBase;
public class ErrorOnValidationException(IList<string> errorMessages) : MyGeneralNotesExceptions(string.Empty)
{
    public IList<string> ErrorsMessages { get; set; } = errorMessages;
}

A classe ErrorOnValidationException é uma exceção que pode ser lançada quando ocorre um erro de validação. Ela aceita uma lista de mensagens de erro como parâmetro para fornecer detalhes sobre o erro.

  • ErrorMessages: Armazena as mensagens de erro associadas à exceção.
  • : base(string.Empty) chama o construtor da classe base (MyGeneralNotesExceptions) com uma string vazia como parâmetro.

InvalidLoginException

A classe InvalidLoginException é uma subclasse que também herda de MyGeneralNotesExceptions.

namespace MyGeneralNotes.Exceptions.ExceptionsBase;
public class InvalidLoginException : MyGeneralNotesExceptions
{
    public InvalidLoginException() : base(MessagesException.EMAIL_OR_PASSWORD_INVALID)
    {
    }
}
  • InvalidLoginException é uma exceção que pode ser lançada quando ocorre um erro de login inválido. Ela não aceita nenhum parâmetro, e quando é instanciada, esta exceção define a mensagem de erro como EMAIL_OR_PASSWORD_INVALID.
  • : base(MessagesException.EMAIL_OR_PASSWORD_INVALID) chama o construtor da classe base (MyGeneralNotesExceptions) com a mensagem de erro associada.

MyGeneralNotesExceptions

A classe MyGeneralNotesExceptions é uma subclasse de SystemException. Veja abaixo uma descrição detalhada:

namespace MyGeneralNotes.Exceptions.ExceptionsBase;
public class MyGeneralNotesExceptions : SystemException
{
    public MyGeneralNotesExceptions(string message) : base(message) { }
}
  • MyGeneralNotesExceptions é uma classe base para outras exceções personalizadas do programa. Ela aceita uma mensagem de erro como parâmetro para fornecer detalhes sobre a exceção.
  • : base(message) chama o construtor da classe base (SystemException) com a mensagem de erro associada.

MessagesException.resx

Aqui está a representação da classe MessagesException.resx, que contém mensagens de erro:

Código Descrição
DETAIL_EXERCISE_BLANK Please describe some details about the exercise.
EMAIL_ALREADY_REGISTARED This email has already been registered.
EMAIL_EMPTY The email cannot be empty.
EMAIL_IS_INVALID The email address provided is not valid.
EMAIL_OR_PASSWORD_INVALID Invalid email and/or password.
EQUIPMENT_EXERCISE_BLANK Please inform the equipment that will be used in the exercise.
EXERCISE_NAME_BLANK Please provide the name of the exercise.
EXERCISE_REPETITIONS_BLANK Please enter the number of repetitions of the exercise.
EXERCISE_WEIGHT_IN_WHITE Please inform the load to be used in the exercise.
EXERCISES_IN_BLANK Please incorporate exercise into your routine.
NAME_EMPTY The name cannot be empty.
NO_TOKEN Not token?
PASSWORD_EMPTY The password cannot be empty. Please enter a password.
ROUTINE_NAME_IN_BLANK Enter the name of your exercise routine.
ROUTINE_NOT_FOUND No routine found.
STUDENT_NAME_IN_WHITE The user name must be provided.
UNKNOWN_ERROR Unknown error.
USER_WITHOUT_PERMISSION USER WITHOUT PERMISSION to access the resource.
WAIT_TIME_IN_BLANK Enter your rest time.
WEIGHT_STUDENT_IN_BLANK The student's weight must be informed.

Essas mensagens são usadas para fornecer detalhes específicos sobre os erros ao lançar as exceções correspondentes.

Encerramento do Diretório de Exceções

Nesta seção, foi apresentado em detalhes o diretório de Exceções da aplicação, onde estão contidas todas as classes de exceção personalizadas utilizadas no sistema. As exceções desempenham um papel crucial no tratamento de erros e na comunicação de problemas específicos que podem ocorrer durante a execução do programa. Este diretório é responsável por organizar e manter todas as classes de exceção personalizadas, cada uma representando um tipo específico de erro ou condição inesperada.

Essas exceções e mensagens de erro são essenciais para garantir uma gestão eficaz de erros e exceções em toda a aplicação, proporcionando uma experiência de usuário mais informativa e amigável durante o uso da aplicação.


Próxima: MyGeneralNotes.Communication

⚠️ **GitHub.com Fallback** ⚠️