Skip to content

Commit 45a8c6a

Browse files
committed
[js][http_api][03_parameter_object] Introduce Request parameter object
1 parent 29a4aa5 commit 45a8c6a

File tree

3 files changed

+12
-3
lines changed

3 files changed

+12
-3
lines changed

examples/js/js-http_api-03_introduce_parameter_object/src/CourseCreator.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ export class CourseCreator {
55
this.repository = repository;
66
}
77

8-
create(id, name, duration) {
9-
const course = new Course(id, name, duration);
8+
create(request) {
9+
const course = new Course(request.id, request.name, request.duration);
1010

1111
this.repository.save(course);
1212
}

examples/js/js-http_api-03_introduce_parameter_object/src/CoursesController.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1+
import {CreateCourseRequest} from "./CreateCourseRequest";
2+
13
export class CoursesController {
24
constructor(courseCreator) {
35
this.courseCreator = courseCreator;
46
}
57

68
create(request) {
7-
this.courseCreator.create(request.body.id, request.body.name, request.body.duration);
9+
this.courseCreator.create(new CreateCourseRequest(request.body.id, request.body.name, request.body.duration));
810

911
return {status: 201};
1012
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
export class CreateCourseRequest {
2+
constructor(id, name, duration) {
3+
this.id = id;
4+
this.name = name;
5+
this.duration = duration;
6+
}
7+
}

0 commit comments

Comments
 (0)