Class MenuItemReviewController
java.lang.Object
edu.ucsb.cs156.example.controllers.ApiController
edu.ucsb.cs156.example.controllers.MenuItemReviewController
@RequestMapping("/api/menuitemreview")
@RestController
public class MenuItemReviewController
extends ApiController
This is a REST controller for MenuItemReview
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionList all Menu Item ReviewsdeleteUCSBDate
(Long id) Delete a MenuItemReviewGet a single menu item review by idpostMenuItemReview
(long itemId, String reviewerEmail, int stars, LocalDateTime dateReviewed, String comments) Create a new menu item reviewupdateMenuItemReview
(Long id, @Valid MenuItemReview incoming) Update a single menu item reviewMethods inherited from class edu.ucsb.cs156.example.controllers.ApiController
genericMessage, getCurrentUser, handleGenericException
-
Constructor Details
-
MenuItemReviewController
public MenuItemReviewController()
-
-
Method Details
-
allReviews
@PreAuthorize("hasRole(\'ROLE_USER\')") @GetMapping("/all") public Iterable<MenuItemReview> allReviews()List all Menu Item Reviews- Returns:
- an iterable of MenuItemReview
-
postMenuItemReview
@PreAuthorize("hasRole(\'ROLE_ADMIN\')") @PostMapping("/post") public MenuItemReview postMenuItemReview(@RequestParam long itemId, @RequestParam String reviewerEmail, @RequestParam int stars, @RequestParam("dateReviewed") @DateTimeFormat(iso=DATE_TIME) LocalDateTime dateReviewed, @RequestParam String comments) throws com.fasterxml.jackson.core.JsonProcessingException Create a new menu item review- Parameters:
itemId
-reviewerEmail
-stars
- the integer (from 0 to 5) of stars given by the reviewerdateReviewed
- the timestamp on the review without time zone informationcomments
- the comments made by the reviewer- Returns:
- the saved review
- Throws:
com.fasterxml.jackson.core.JsonProcessingException
-
getById
@PreAuthorize("hasRole(\'ROLE_USER\')") @GetMapping("") public MenuItemReview getById(@RequestParam Long id) Get a single menu item review by id- Parameters:
id
- the id of the menu item review- Returns:
- a MenuItemReview
-
updateMenuItemReview
@PreAuthorize("hasRole(\'ROLE_ADMIN\')") @PutMapping("") public MenuItemReview updateMenuItemReview(@RequestParam Long id, @RequestBody @Valid @Valid MenuItemReview incoming) Update a single menu item review- Parameters:
id
- id of the menu item review to updateincoming
- the new menu item review- Returns:
- the updated menu item review object
-
deleteUCSBDate
@PreAuthorize("hasRole(\'ROLE_ADMIN\')") @DeleteMapping("") public Object deleteUCSBDate(@RequestParam Long id) Delete a MenuItemReview- Parameters:
id
- the id of the menu item review to delete- Returns:
- a message indicating the menu item review was deleted
-