Add endpoint to retrieve latest publications.

This commit is contained in:
Florian THIERRY
2024-06-04 13:06:20 +02:00
parent 067bf7885a
commit 58295398e0
7 changed files with 53 additions and 1 deletions

View File

@@ -48,6 +48,7 @@ public class SecurityConfiguration {
"/api/pictures/{pictureId}",
"/api/publications/{publicationId}",
"/api/publications",
"/api/publications/latest",
"/error"
).permitAll()
.requestMatchers(

View File

@@ -66,7 +66,7 @@ public class PublicationController {
@GetMapping
public List<PublicationDto> searchPublications(@RequestParam("query") String searchQuery) {
final List<PublicationDto> publications = publicationUseCases.searchPublications(searchQuery)
List<PublicationDto> publications = publicationUseCases.searchPublications(searchQuery)
.stream()
.map(PublicationDto::new)
.toList();
@@ -77,4 +77,18 @@ public class PublicationController {
return publications;
}
@GetMapping("/latest")
public List<PublicationDto> getLatestPublications() {
List<PublicationDto> publications = publicationUseCases.getLatest()
.stream()
.map(PublicationDto::new)
.toList();
if (isEmpty(publications)) {
throw new NoPublicationSearchResultException();
}
return publications;
}
}