Interface PostService
- All Known Implementing Classes:
PostServiceImpl
public interface PostService
Интерфейс определяет функциональность для постов пользователей, таких как создание, обновление.
- Author:
- mrGreenNV
-
Method Summary
Modifier and TypeMethodDescriptionvoidПозволяет прикрепить изображения к посту.createPost(Post post) Позволяет создать пост.voiddeleteImage(Long postId, Long imageId) Позволяет открепить изображение от поста.voiddeletePost(Long postId) Позволяет пользователю удалить свой пост.Позволяет получить список всех постов отсортированных по дате создания.getAllPostByCreateAt(org.springframework.data.domain.PageRequest pageRequest) Позволяет получить список всех постов отсортированных по дате создания с пагинацией страниц.getPostByUserIds(List<Long> userIds) Позволяет получить список постов по идентификаторам их создателей сортируя по дате.getPostByUserIds(List<Long> userIds, org.springframework.data.domain.PageRequest pageRequest) Позволяет получить список постов по идентификаторам их создателей сортируя по дате с пагинацией страниц.Позволяет посмотреть все посты пользователя.showAllPostsByUser(org.springframework.data.domain.PageRequest pageRequest) Позволяет посмотреть все посты пользователя с пагинацией страниц.updatePost(Long postId, Post updatedPost) Позволяет обновить пост.
-
Method Details
-
createPost
Позволяет создать пост.- Parameters:
post- создаваемый пост.- Returns:
- созданный пост.
- Throws:
PostCreationException- выбрасывает при возникновении ошибки при создании поста.
-
addImage
Позволяет прикрепить изображения к посту.- Parameters:
postId- идентификатор поста к которому добавляется изображение.image- прикрепляемое изображение.- Throws:
AuthException- выбрасывает если недостаточно прав для редактирования поста.PostNotFoundException- выбрасывает если пост с заданным идентификатором не удалось найти в базе данных.
-
deleteImage
void deleteImage(Long postId, Long imageId) throws PostNotFoundException, AuthException, ImageNotFoundException Позволяет открепить изображение от поста.- Parameters:
postId- идентификатор поста.imageId- идентификатор изображения.- Throws:
PostNotFoundException- выбрасывает, если пост не найден в базе данных.AuthException- выбрасывает, если недостаточно прав.ImageNotFoundException- выбрасывает, если изображение не найдено в базу данных.
-
updatePost
Позволяет обновить пост.- Parameters:
postId- идентификатор обновляемого поста.updatedPost- пост с новыми данными.- Returns:
- обновленный пост.
- Throws:
PostNotFoundExceptionAuthException
-
deletePost
Позволяет пользователю удалить свой пост.- Parameters:
postId- идентификатор удаляемого поста.- Throws:
PostNotFoundException- выбрасывает, если пост с заданным идентификатором не найден в базе данных.AuthException- выбрасывает, если для удаления поста недостаточно прав.
-
showAllPostsByUser
Позволяет посмотреть все посты пользователя с пагинацией страниц.- Parameters:
pageRequest- пагинация запроса.- Returns:
- список постов.
- Throws:
AuthException- выбрасывает, если произошла ошибка при получении данных из аутентификации пользователя.
-
showAllPostsByUser
Позволяет посмотреть все посты пользователя.- Returns:
- список постов.
- Throws:
AuthException- выбрасывает, если произошла ошибка при получении данных из аутентификации пользователя.
-
getAllPostByCreateAt
Позволяет получить список всех постов отсортированных по дате создания с пагинацией страниц.- Parameters:
pageRequest- пагинация запроса.- Returns:
- список объектов Post.
-
getAllPostByCreateAt
Позволяет получить список всех постов отсортированных по дате создания.- Returns:
- список объектов Post.
-
getPostByUserIds
List<Post> getPostByUserIds(List<Long> userIds, org.springframework.data.domain.PageRequest pageRequest) Позволяет получить список постов по идентификаторам их создателей сортируя по дате с пагинацией страниц.- Parameters:
userIds- список идентификаторов создателей постов.pageRequest- пагинация запроса.- Returns:
- список объектов Post.
-
getPostByUserIds
Позволяет получить список постов по идентификаторам их создателей сортируя по дате.- Parameters:
userIds- список идентификаторов создателей постов.- Returns:
- список объектов Post.
-