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) Позволяет создать сообщение.voiddeleteMessage(Long messageId) Позволяет удалить сообщение между пользователями.editMessage(Long messageId, String editContent) Позволяет отредактировать текст сообщения.Позволяет получить список собеседников пользователя.getMessagesBetweenUsers(Long interlocutorId) Позволяет получить переписку между авторизованным пользователем и конкретным собеседником.
-
Constructor Details
-
MessageServiceImpl
public MessageServiceImpl()
-
-
Method Details
-
createMessage
Позволяет создать сообщение.- Specified by:
createMessagein interfaceMessageService- Parameters:
messageDTO- DTO сообщения с данными о пользователях и контенте.- Returns:
- DTO созданного сообщения.
- Throws:
UserNotFoundException- выбрасывает, если не удалось найти пользователя в базе данных.
-
editMessage
public MessageDTO editMessage(Long messageId, String editContent) throws MessageNotFoundException, AuthException Позволяет отредактировать текст сообщения.- Specified by:
editMessagein interfaceMessageService- Parameters:
messageId- идентификатор сообщения.editContent- отредактированный контент сообщения.- Returns:
- DTO отредактированного сообщения.
- Throws:
MessageNotFoundException- выбрасывает, если сообщение не найдено.AuthException- выбрасывает, если недостаточно прав для редактирования сообщения.
-
deleteMessage
Позволяет удалить сообщение между пользователями.- Specified by:
deleteMessagein interfaceMessageService- Parameters:
messageId- идентификатор удаляемого сообщения.- Throws:
MessageNotFoundException- выбрасывает, если сообщение не найдено.AuthException- выбрасывает, если недостаточно прав для удаления сообщения.
-
getMessagesBetweenUsers
public List<MessageDTO> getMessagesBetweenUsers(Long interlocutorId) throws UserNotFoundException, AuthException Позволяет получить переписку между авторизованным пользователем и конкретным собеседником.- Specified by:
getMessagesBetweenUsersin interfaceMessageService- Parameters:
interlocutorId- идентификатор собеседника.- Returns:
- список DTO объектом содержащий сообщения между пользователями.
- Throws:
UserNotFoundException- выбрасывает, если пользователь не найден.AuthException- выбрасывает, если возникнет ошибка аутентификации пользователя в системе.
-
getConversationsForUser
Позволяет получить список собеседников пользователя.- Specified by:
getConversationsForUserin interfaceMessageService- Returns:
- список DTO объектов содержащих данные на собеседников.
- Throws:
AuthException- выбрасывает если при аутентификации пользователя возникает ошибка.
-