1
1
package com .codedifferently .lesson26 .web ;
2
2
3
+ import com .codedifferently .lesson26 .library .Librarian ;
4
+ import com .codedifferently .lesson26 .library .Library ;
5
+ import com .codedifferently .lesson26 .library .MediaItem ;
6
+ import com .codedifferently .lesson26 .library .search .SearchCriteria ;
7
+ import jakarta .validation .Valid ;
3
8
import java .io .IOException ;
4
9
import java .util .List ;
5
10
import java .util .Set ;
6
11
import java .util .UUID ;
7
-
8
12
import org .springframework .http .ResponseEntity ;
9
13
import org .springframework .web .bind .annotation .CrossOrigin ;
10
14
import org .springframework .web .bind .annotation .DeleteMapping ;
14
18
import org .springframework .web .bind .annotation .RequestBody ;
15
19
import org .springframework .web .bind .annotation .RestController ;
16
20
17
- import com .codedifferently .lesson26 .library .Librarian ;
18
- import com .codedifferently .lesson26 .library .Library ;
19
- import com .codedifferently .lesson26 .library .MediaItem ;
20
- import com .codedifferently .lesson26 .library .search .SearchCriteria ;
21
-
22
- import jakarta .validation .Valid ;
23
-
24
21
@ RestController
25
22
@ CrossOrigin
26
23
public class MediaItemsController {
@@ -41,12 +38,12 @@ public GetMediaItemsResponse getItems() {
41
38
}
42
39
43
40
@ GetMapping ("/items/{id}" )
44
- public ResponseEntity <MediaItemResponse > getItemById (@ PathVariable ("id" ) UUID id ){
41
+ public ResponseEntity <MediaItemResponse > getItemById (@ PathVariable ("id" ) UUID id ) {
45
42
SearchCriteria searchCriteria = SearchCriteria .builder ().id (id .toString ()).build ();
46
43
47
44
Set <MediaItem > foundItem = library .search (searchCriteria );
48
45
49
- if (foundItem .isEmpty ()){
46
+ if (foundItem .isEmpty ()) {
50
47
return ResponseEntity .notFound ().build ();
51
48
}
52
49
@@ -57,12 +54,12 @@ public ResponseEntity<MediaItemResponse> getItemById(@PathVariable("id") UUID id
57
54
}
58
55
59
56
@ DeleteMapping ("/items/{id}" )
60
- public ResponseEntity <Void > deleteItem (@ PathVariable ("id" ) UUID id ){
57
+ public ResponseEntity <Void > deleteItem (@ PathVariable ("id" ) UUID id ) {
61
58
SearchCriteria searchCriteria = SearchCriteria .builder ().id (id .toString ()).build ();
62
59
63
60
Set <MediaItem > foundItem = library .search (searchCriteria );
64
61
65
- if (foundItem .isEmpty ()){
62
+ if (foundItem .isEmpty ()) {
66
63
return ResponseEntity .notFound ().build ();
67
64
}
68
65
@@ -73,19 +70,18 @@ public ResponseEntity<Void> deleteItem(@PathVariable("id") UUID id){
73
70
return ResponseEntity .noContent ().build ();
74
71
}
75
72
76
-
77
73
@ PostMapping ("/items" )
78
- public CreateMediaItemResponse addsItem (@ Valid @ RequestBody CreateMediaItemRequest request ){
74
+ public CreateMediaItemResponse addsItem (@ Valid @ RequestBody CreateMediaItemRequest request ) {
79
75
80
76
MediaItemRequest itemRequest = request .getItem ();
81
77
82
78
MediaItem item = MediaItemRequest .asMediaItem (itemRequest );
83
79
84
80
library .addMediaItem (item , librarian );
85
81
86
- CreateMediaItemResponse response = CreateMediaItemResponse .builder ().item (getItemById (item .getId ()).getBody ()).build ();
82
+ CreateMediaItemResponse response =
83
+ CreateMediaItemResponse .builder ().item (getItemById (item .getId ()).getBody ()).build ();
87
84
88
85
return response ;
89
-
90
86
}
91
87
}
0 commit comments