Interface UserContract
- All Known Implementing Classes:
User
UserContract define o contrato para o gerenciamento de um usuário no sistema.
Ela especifica os métodos que devemos implementar para manipular os detalhes essenciais do usuário,
como ID, nome de usuário, email, senha e perfil.
A implementação desta interface deve garantir a validação adequada dos dados do usuário antes de
prosseguir com qualquer operação, como a mudança de senha ou nome de usuário. Se qualquer dado inválido for
fornecido, como uma senha ou username nulo ou em branco, deverá lançar a exceção
UserCreationFailureException.
- Since:
- 1.0.0
- Author:
- diegoneves
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoidchangeUserName(String updatedUsername) Este método é responsável por alterar o nome de usuário.voidchangeUserPassword(String password) Altera a senha do usuário atual.getEmail()Obtém o email do usuário.getId()Este método retorna o ID único do usuário.Obtém o nome de usuário do usuário.Recupera a senha do usuário.Retorna o objeto UserProfile associado ao usuário.
-
Method Details
-
getId
String getId()Este método retorna o ID único do usuário.- Returns:
- ID do usuário como String.
-
getUsername
String getUsername()Obtém o nome de usuário do usuário.- Returns:
- nome de usuário como String.
-
getEmail
String getEmail()Obtém o email do usuário.- Returns:
- Email do usuário como String.
-
getUserPassword
String getUserPassword()Recupera a senha do usuário.Em uma implementação segura, esse método deve ser manuseado com cuidado para evitar a exposição de dados sensíveis.
- Returns:
- Senha do usuário como String.
-
getUserProfile
UserProfile getUserProfile()Retorna o objeto UserProfile associado ao usuário.- Returns:
- A instância de UserProfile do usuário.
-
changeUserPassword
Altera a senha do usuário atual.Este método é usado para alterar a senha do usuário. Ele verifica se a senha fornecida é nula ou em branco. Se for esse o caso, ele lançará uma exceção
UserCreationFailureException.- Parameters:
password- Nova senha do usuário como uma String. Ela não pode ser nula ou em branco.- Throws:
UserCreationFailureException- se a senha fornecida for nula ou em branco. Isso indica que uma senha adequada não foi fornecida.
-
changeUserName
Este método é responsável por alterar o nome de usuário.Cuidados são tomados para garantir que o nome de usuário não seja uma String vazia ou nula, caso contrário, seria levantada uma exceção
UserCreationFailureExceptionindicando que o nome de usuário é obrigatório.Essa operação é realizada para o perfil de usuário atual associado a este objeto e o valor de
'this.userName'é alterado no final. O nome de usuário atribuído aqui é usado posteriormente em outras operações relacionadas ao usuário.- Parameters:
updatedUsername- uma String que contém o novo nome de usuário.- Throws:
UserCreationFailureException- se o parâmetro updatedUsername é nulo ou uma String vazia.
-