Class UserServiceImpl
java.lang.Object
ru.averkiev.greenchat_user.services.impl.UserServiceImpl
- All Implemented Interfaces:
UserService
Класс реализует функционал взаимодействия User с базой данных.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
deleteUser
(Long userId) Удаляет пользователя по его идентификатору.boolean
existsUserByEmail
(String email) Проверяет, существует ли пользователь с указанной электронной почтой.boolean
existsUserById
(Long userId) Проверяет, существует ли пользователь с указанным идентификатором.boolean
existsUserByLogin
(String login) Проверяет, существует ли пользователь с указанным логином.Возвращает список всех пользователей.getBlockingInitiatedByUser
(Long userId) Возвращает список блокировок, инициированных указанным пользователем.getBlockingReceivedByUser
(Long userId) Возвращает список блокировок, адресованных указанному пользователю.getRolesByLogin
(String login) Возвращает список всех ролей по имени пользователя.getUserById
(Long userId) Возвращает пользователя по его идентификатору.getUserByLogin
(String login) Возвращает пользователя по его логину.register
(UserCreateDTO userCreateDTO) Регистрирует нового пользователя в системе.Создаёт нового пользователя в системеsoftDeleteUser
(Long userId) Помечает пользователя удалённым, но не удаляет физически.updateUser
(Long userId, UserUpdateDTO userUpdateDTO) Обновляет информацию о пользователе с указанным идентификатором.void
updateUserPassword
(Long userId, UserUpdatePasswordDTO userUpdatePasswordDTO) Обновляет пароль пользователя с указанным идентификатором.
-
Constructor Details
-
UserServiceImpl
public UserServiceImpl()
-
-
Method Details
-
register
Регистрирует нового пользователя в системе.- Specified by:
register
in interfaceUserService
- Parameters:
userCreateDTO
- DTO данные нового пользователя.- Returns:
- зарегистрированный пользователь.
- Throws:
RegistrationException
- выбрасывает если регистрация пользователя не удалась по каким-либо причинам.
-
saveUser
Создаёт нового пользователя в системе- Specified by:
saveUser
in interfaceUserService
- Parameters:
user
- новый пользователь.- Returns:
- созданный пользователь.
-
getUserById
Возвращает пользователя по его идентификатору.- Specified by:
getUserById
in interfaceUserService
- Parameters:
userId
- идентификатор искомого пользователя.- Returns:
- Optional, содержащий найденного пользователя, или пустой Optional, если пользователь не найден.
-
getUserByLogin
Возвращает пользователя по его логину.- Specified by:
getUserByLogin
in interfaceUserService
- Parameters:
login
- логин пользователя.- Returns:
- Optional, содержащий найденного пользователя, или пустой Optional, если пользователь не найден.
-
updateUser
public UserUpdateDTO updateUser(Long userId, UserUpdateDTO userUpdateDTO) throws UserNotFoundException Обновляет информацию о пользователе с указанным идентификатором.- Specified by:
updateUser
in interfaceUserService
- Parameters:
userId
- идентификатор обновляемого пользователя.userUpdateDTO
- объект, содержащий обновлённые данные пользователя.- Returns:
- обновлённый объект пользователя.
- Throws:
UserNotFoundException
- выбрасывает если пользователь с указанным идентификатором не найден.
-
updateUserPassword
public void updateUserPassword(Long userId, UserUpdatePasswordDTO userUpdatePasswordDTO) throws UserNotFoundException, PasswordsNotMatchException Обновляет пароль пользователя с указанным идентификатором.- Specified by:
updateUserPassword
in interfaceUserService
- Parameters:
userId
- указанный идентификатор пользователя.userUpdatePasswordDTO
- объект содержащий новый пароль.- Throws:
UserNotFoundException
- выбрасывает если пользователь с указанным идентификатором не найден.PasswordsNotMatchException
-
deleteUser
Удаляет пользователя по его идентификатору.- Specified by:
deleteUser
in interfaceUserService
- Parameters:
userId
- идентификатор удаляемого пользователя.
-
softDeleteUser
Помечает пользователя удалённым, но не удаляет физически.- Specified by:
softDeleteUser
in interfaceUserService
- Parameters:
userId
- идентификатор пользователя.- Returns:
- DTO объект с информацией о статусе
-
getAllUsers
Возвращает список всех пользователей.- Specified by:
getAllUsers
in interfaceUserService
- Returns:
- список ролей.
-
getRolesByLogin
Возвращает список всех ролей по имени пользователя.- Specified by:
getRolesByLogin
in interfaceUserService
- Parameters:
login
- указанное имя пользователя.- Returns:
- список пользователей
- Throws:
RoleNotFoundException
- - выбрасывается, если указанная роль не найдена.UserNotFoundException
-
getBlockingInitiatedByUser
Description copied from interface:UserService
Возвращает список блокировок, инициированных указанным пользователем.- Specified by:
getBlockingInitiatedByUser
in interfaceUserService
- Parameters:
userId
- идентификатор пользователя, инициирующего блокировки.- Returns:
- список блокировок.
-
getBlockingReceivedByUser
Description copied from interface:UserService
Возвращает список блокировок, адресованных указанному пользователю.- Specified by:
getBlockingReceivedByUser
in interfaceUserService
- Parameters:
userId
- идентификатор указанного пользователя.- Returns:
- список блокировок.
-
existsUserById
Проверяет, существует ли пользователь с указанным идентификатором.- Specified by:
existsUserById
in interfaceUserService
- Parameters:
userId
- идентификатор проверяемого пользователя.- Returns:
- true, если пользователь существует, иначе false.
-
existsUserByLogin
Проверяет, существует ли пользователь с указанным логином.- Specified by:
existsUserByLogin
in interfaceUserService
- Parameters:
login
- логин проверяемого пользователя.- Returns:
- true, если пользователь существует, иначе false.
-
existsUserByEmail
Проверяет, существует ли пользователь с указанной электронной почтой.- Specified by:
existsUserByEmail
in interfaceUserService
- Parameters:
email
- электронная почта проверяемого пользователя.- Returns:
- true, если пользователь существует, иначе false.
-