java.lang.Object
diegosneves.github.conectardoacoes.adapters.rest.mapper.UserMapper
All Implemented Interfaces:
MapperStrategy<UserContract,UserEntity>

public class UserMapper extends Object implements MapperStrategy<UserContract,UserEntity>
Implementação da interface MapperStrategy para a conversão entre a entidade UserEntity e a classe de domínio User. Fornece funcionalidades para mapear um objeto UserEntity em um objeto User.

A classe UserMapper tem a função de converter os dados de um objeto UserEntity, que são compatíveis com o modelo de dados do banco, para um objeto User, que é o modelo de negócio do sistema.

Como é uma implementação da interface MapperStrategy, a classe UserMapper é obrigada a implementar o método mapFrom.

Since:
1.0.0
Author:
diegoneves
See Also:
  • Field Details

  • Constructor Details

    • UserMapper

      public UserMapper()
  • Method Details

    • mapFrom

      public UserContract mapFrom(UserEntity source)
      Mapeia uma entidade de usuário (UserEntity) para um objeto de usuário de domínio (User). Realiza a conversão de uma entidade persistida de um usuário para uma representação de usuário de domínio.

      O mapeamento é realizado atribuindo cada campo do objeto User com os valores correspondentes do objeto UserEntity. Além disso, o perfil do usuário é obtido utilizando o método valueOf da classe Enum, que retornará o perfil correspondente de acordo com o nome do perfil informado.

      Specified by:
      mapFrom in interface MapperStrategy<UserContract,UserEntity>
      Parameters:
      source - a entidade de origem que representa um usuário no banco de dados
      Returns:
      uma instância da classe de domínio User, com seus campos preenchidos com os valores correspondentes da entidade de origem
    • validateData

      private <T> void validateData(T data) throws UserEntityFailuresException
      Este método é usado para verificar se o dado fornecido é nulo ou vazio (no caso de Strings) e lança uma exceção se alguma dessas condições for atendida. Este método é útil para validar os dados antes de operações que requerem que esses dados não sejam nulos ou vazios.
      Type Parameters:
      T - o tipo de dado a ser validado. Como este é um método genérico, ele pode aceitar qualquer tipo de objeto.
      Parameters:
      data - o dado a ser validado.
      Throws:
      UserEntityFailuresException - se o dado fornecido for nulo ou, no caso de Strings, estiver vazio. A mensagem da exceção será uma mensagem de erro formatada a partir do ExceptionDetails anexada com a simplificação do nome da classe UserEntity.
      See Also: