diff --git a/requests.http b/requests.http index 50ce01e6d355d28e4c09c1c33cab6092a487ed5a..9401e1383917ab5d3465013509c86a6c92163108 100644 --- a/requests.http +++ b/requests.http @@ -1,6 +1,6 @@ ### Get all plants -GET http://localhost:8080/api/v1/plants -Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJsdWthcy5rYXJzY2hAZ214LmRlIiwiaWF0IjoxNzAwOTMzNjQ4LCJleHAiOjE3MDEwMjAwNDh9.IXoMuNecB7ARvZpEyx5SraMbdoZrHgADeHd7wAo0ddw +GET http://localhost:8080/api/v1/plants?page=0 +Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJsdWthcy5rYXJzY2hAZ214LmRlIiwiaWF0IjoxNzAxMjc4MzkzLCJleHAiOjE3MDEzNjQ3OTN9.TVQlG3yAl_zJddPoWDndY9Xj-9EaR0P__x3aGU3sdBA ### Get garden entries GET http://localhost:8080/api/v1/garden diff --git a/src/main/java/hdm/mi/growbros/controllers/PlantsController.java b/src/main/java/hdm/mi/growbros/controllers/PlantsController.java index 096fa76806749f6712792a53d7568b326459ad10..dbe036957c7ce322eca3a4bf1b8114e94dd1beb6 100644 --- a/src/main/java/hdm/mi/growbros/controllers/PlantsController.java +++ b/src/main/java/hdm/mi/growbros/controllers/PlantsController.java @@ -15,8 +15,11 @@ public class PlantsController { private final PlantsService plantsService; @GetMapping("/api/v1/plants") - public Collection<Plant> getAllPlants() { - return plantsService.getPlants(); + public Collection<Plant> getAllPlants( + @RequestParam(value = "page", defaultValue = "0") int page, + @RequestParam(value = "pageSize", defaultValue = "25") int pageSize + ) { + return plantsService.getPlants(page, pageSize); } @GetMapping("api/v1/randomPlants/{numberOfPlants}") diff --git a/src/main/java/hdm/mi/growbros/service/PlantsService.java b/src/main/java/hdm/mi/growbros/service/PlantsService.java index 2d83c2c5538bd1437f96bcbc363f910a9f174671..d56338f8b4f796ad1f83c0eee5af1861b2c78887 100644 --- a/src/main/java/hdm/mi/growbros/service/PlantsService.java +++ b/src/main/java/hdm/mi/growbros/service/PlantsService.java @@ -5,6 +5,8 @@ import hdm.mi.growbros.repositories.PlantRepository; import lombok.RequiredArgsConstructor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -19,8 +21,9 @@ public class PlantsService { private final PlantRepository plantRepository; - public Collection<Plant> getPlants() { - return plantRepository.findAll(); + public Collection<Plant> getPlants(int pageNumber, int pageSize) { + final Pageable page = PageRequest.of(pageNumber, pageSize); + return plantRepository.findAll(page).getContent(); } public Collection<Plant> getRandomPlants(int numberOfPlants) {