diff options
| author | Kevin J Hoerr <khoerr@ksmpartners.com> | 2022-01-31 16:06:42 -0500 |
|---|---|---|
| committer | Kevin J Hoerr <khoerr@ksmpartners.com> | 2022-01-31 16:06:42 -0500 |
| commit | cdf65b32202746eaffd9e58bf951d1995ab03be3 (patch) | |
| tree | 24550b6bdc7f5676cba73b249ef013a595552210 /src/main/java/dev/submelon/pantry/PantryItemController.java | |
| parent | 57fa8d6a70a3fb7c86ad757114533874dc5e473c (diff) | |
| download | pantry-cdf65b32202746eaffd9e58bf951d1995ab03be3.tar.gz pantry-cdf65b32202746eaffd9e58bf951d1995ab03be3.tar.bz2 pantry-cdf65b32202746eaffd9e58bf951d1995ab03be3.zip | |
Add DELETE endpoint for PantryItem
Diffstat (limited to 'src/main/java/dev/submelon/pantry/PantryItemController.java')
| -rw-r--r-- | src/main/java/dev/submelon/pantry/PantryItemController.java | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/main/java/dev/submelon/pantry/PantryItemController.java b/src/main/java/dev/submelon/pantry/PantryItemController.java index 142cbf6..d5586e5 100644 --- a/src/main/java/dev/submelon/pantry/PantryItemController.java +++ b/src/main/java/dev/submelon/pantry/PantryItemController.java @@ -1,7 +1,10 @@ package dev.submelon.pantry; +import java.util.NoSuchElementException; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; @@ -16,6 +19,12 @@ public class PantryItemController { @Autowired private PantryItemRepository itemRepository; + @GetMapping(path="") + @ResponseBody + Iterable<PantryItem> getAllItems() { + return itemRepository.findAll(); + } + @PostMapping(path="") @ResponseBody PantryItem addNewItem(@RequestBody PantryItem item) { @@ -38,10 +47,15 @@ public class PantryItemController { }); } - @GetMapping(path="") + @DeleteMapping(path="/{id}") @ResponseBody - Iterable<PantryItem> getAllItems() { - return itemRepository.findAll(); + PantryItem deletePantryItem(@PathVariable Long id) { + return itemRepository.findById(id) + .map(item -> { + itemRepository.delete(item); + return item; + }) + .orElseThrow(NoSuchElementException::new); } } |
