Skip to content

Commit d8a17ea

Browse files
chore: update MediaItemsController so that it can compile
1 parent 5e4a5e0 commit d8a17ea

File tree

1 file changed

+13
-12
lines changed

1 file changed

+13
-12
lines changed

lesson_26/api/java/api_app/src/main/java/com/codedifferently/lesson26/web/MediaItemsController.java

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,11 @@
11
package com.codedifferently.lesson26.web;
2-
import com.codedifferently.lesson26.library.Librarian;
3-
import com.codedifferently.lesson26.library.Library;
4-
import com.codedifferently.lesson26.library.MediaItem;
5-
import com.codedifferently.lesson26.library.search.SearchCriteria;
6-
import com.codedifferently.lesson26.web.GetMediaItemsResponse.GetMediaItemsResponseBuilder;
72

8-
import jakarta.validation.Valid;
93
import java.io.IOException;
104
import java.util.List;
115
import java.util.Map;
126
import java.util.Set;
137
import java.util.UUID;
8+
149
import org.springframework.http.ResponseEntity;
1510
import org.springframework.validation.FieldError;
1611
import org.springframework.web.bind.MethodArgumentNotValidException;
@@ -23,8 +18,13 @@
2318
import org.springframework.web.bind.annotation.RequestBody;
2419
import org.springframework.web.bind.annotation.RequestMapping;
2520
import org.springframework.web.bind.annotation.RestController;
21+
22+
import com.codedifferently.lesson26.library.Librarian;
23+
import com.codedifferently.lesson26.library.Library;
24+
import com.codedifferently.lesson26.library.MediaItem;
2625
import com.codedifferently.lesson26.library.search.SearchCriteria;
2726

27+
import jakarta.validation.Valid;
2828

2929
@RestController
3030
@CrossOrigin
@@ -33,10 +33,12 @@ public class MediaItemsController {
3333

3434
private final Library library;
3535
private final Librarian librarian;
36+
3637
public MediaItemsController(Library library) throws IOException {
3738
this.library = library;
3839
this.librarian = library.getLibrarians().stream().findFirst().orElseThrow();
3940
}
41+
4042
@GetMapping("/items")
4143
public ResponseEntity<GetMediaItemsResponse> getItems() {
4244
Set<MediaItem> items = library.search(SearchCriteria.builder().build());
@@ -48,7 +50,7 @@ public ResponseEntity<GetMediaItemsResponse> getItems() {
4850
@GetMapping("/items/{id}")
4951
public ResponseEntity<MediaItemResponse> getItemById(@PathVariable String id) {
5052
try {
51-
Set<MediaItem> items = library.search(((Object) SearchCriteria.builder()).id(id).build());
53+
Set<MediaItem> items = library.search((SearchCriteria.builder().id(id).build()));
5254
if (items.isEmpty()) {
5355
return ResponseEntity.notFound().build();
5456
}
@@ -60,20 +62,19 @@ public ResponseEntity<MediaItemResponse> getItemById(@PathVariable String id) {
6062
}
6163

6264
@PostMapping("/items")
63-
public ResponseEntity<Object> createItem(
64-
@Valid @RequestBody CreateMediaItemRequest request) {
65+
public ResponseEntity<Object> createItem(@Valid @RequestBody CreateMediaItemRequest request) {
6566
try {
6667
MediaItem item = MediaItemRequest.asMediaItem(request.getItem());
6768
library.addMediaItem(item, librarian);
68-
var response = ((GetMediaItemsResponseBuilder) CreateMediaItemResponse.builder()).item(MediaItemResponse.from(item)).build();
69+
var response = (CreateMediaItemResponse.builder()).item(MediaItemResponse.from(item)).build();
6970
return ResponseEntity.ok(response);
7071
} catch (IllegalArgumentException e) {
7172
return ResponseEntity.badRequest().build();
7273
}
7374
}
7475

7576
@DeleteMapping("/items/{id}")
76-
public ResponseEntity<Void> deleteItemById(@PathVariable("id") String id) {
77+
public ResponseEntity<Void> deleteItemById(@PathVariable("id") String id) {
7778
try {
7879
UUID uuid = UUID.fromString(id);
7980
Set<MediaItem> items = library.search(SearchCriteria.builder().id(id).build());
@@ -94,4 +95,4 @@ public ResponseEntity<Map<String, List<String>>> handleValidationErrors(
9495
ex.getBindingResult().getFieldErrors().stream().map(FieldError::getDefaultMessage).toList();
9596
return ResponseEntity.badRequest().body(Map.of("errors", errors));
9697
}
97-
}
98+
}

0 commit comments

Comments
 (0)