Class MessageServiceImpl
java.lang.Object
ru.averkiev.socialmediaapi.services.impl.MessageServiceImpl
- All Implemented Interfaces:
MessageService
Класс реализует функциональность для сообщений пользователей, таких как создание, редактирование, удаление и
получение переписки.
- Author:
- mrGreenNV
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateMessage
(MessageDTO messageDTO) Позволяет создать сообщение.void
deleteMessage
(Long messageId) Позволяет удалить сообщение между пользователями.editMessage
(Long messageId, String editContent) Позволяет отредактировать текст сообщения.Позволяет получить список собеседников пользователя.getMessagesBetweenUsers
(Long interlocutorId) Позволяет получить переписку между авторизованным пользователем и конкретным собеседником.
-
Constructor Details
-
MessageServiceImpl
public MessageServiceImpl()
-
-
Method Details
-
createMessage
Позволяет создать сообщение.- Specified by:
createMessage
in interfaceMessageService
- Parameters:
messageDTO
- DTO сообщения с данными о пользователях и контенте.- Returns:
- DTO созданного сообщения.
- Throws:
UserNotFoundException
- выбрасывает, если не удалось найти пользователя в базе данных.
-
editMessage
public MessageDTO editMessage(Long messageId, String editContent) throws MessageNotFoundException, AuthException Позволяет отредактировать текст сообщения.- Specified by:
editMessage
in interfaceMessageService
- Parameters:
messageId
- идентификатор сообщения.editContent
- отредактированный контент сообщения.- Returns:
- DTO отредактированного сообщения.
- Throws:
MessageNotFoundException
- выбрасывает, если сообщение не найдено.AuthException
- выбрасывает, если недостаточно прав для редактирования сообщения.
-
deleteMessage
Позволяет удалить сообщение между пользователями.- Specified by:
deleteMessage
in interfaceMessageService
- Parameters:
messageId
- идентификатор удаляемого сообщения.- Throws:
MessageNotFoundException
- выбрасывает, если сообщение не найдено.AuthException
- выбрасывает, если недостаточно прав для удаления сообщения.
-
getMessagesBetweenUsers
public List<MessageDTO> getMessagesBetweenUsers(Long interlocutorId) throws UserNotFoundException, AuthException Позволяет получить переписку между авторизованным пользователем и конкретным собеседником.- Specified by:
getMessagesBetweenUsers
in interfaceMessageService
- Parameters:
interlocutorId
- идентификатор собеседника.- Returns:
- список DTO объектом содержащий сообщения между пользователями.
- Throws:
UserNotFoundException
- выбрасывает, если пользователь не найден.AuthException
- выбрасывает, если возникнет ошибка аутентификации пользователя в системе.
-
getConversationsForUser
Позволяет получить список собеседников пользователя.- Specified by:
getConversationsForUser
in interfaceMessageService
- Returns:
- список DTO объектов содержащих данные на собеседников.
- Throws:
AuthException
- выбрасывает если при аутентификации пользователя возникает ошибка.
-