From b308373062c496e624040290cd77ab12ec8fbaab Mon Sep 17 00:00:00 2001 From: BuildTools Date: Wed, 4 Nov 2020 16:40:02 +0100 Subject: [PATCH] Added controllers description --- .../src/main/java/com/plannaplan/Swagger2Config.java | 4 ++-- .../plannaplan/controllers/AssignmentsController.java | 4 ++++ .../plannaplan/controllers/CommisionController.java | 4 ++++ .../com/plannaplan/controllers/ConfigController.java | 3 +++ .../com/plannaplan/controllers/CoursesController.java | 10 ++++++++-- .../com/plannaplan/controllers/GroupController.java | 9 +++++++-- .../com/plannaplan/controllers/TokenController.java | 3 +++ .../com/plannaplan/controllers/UsersController.java | 4 ++++ 8 files changed, 35 insertions(+), 6 deletions(-) diff --git a/restservice/src/main/java/com/plannaplan/Swagger2Config.java b/restservice/src/main/java/com/plannaplan/Swagger2Config.java index df6d78c..5ccbe90 100755 --- a/restservice/src/main/java/com/plannaplan/Swagger2Config.java +++ b/restservice/src/main/java/com/plannaplan/Swagger2Config.java @@ -30,8 +30,8 @@ public class Swagger2Config extends WebMvcConfigurationSupport { } private ApiInfo apiInfo() { - return new ApiInfoBuilder().title("xxxxx").description("Swagger2 builds RESTful APIs") - .termsOfServiceUrl("http://www.baidu.com/") + return new ApiInfoBuilder().title("plannaplan").description("Aplikacja do zapisów na zajęcia UAM.") + .termsOfServiceUrl("https://plannaplan.pl/") // .contact("") .version("1.0").build(); } diff --git a/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java b/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java index 2158118..3ca9f2e 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java @@ -4,6 +4,8 @@ import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.Api; + import java.util.List; import java.util.Optional; @@ -24,6 +26,8 @@ import org.springframework.web.bind.annotation.RequestMapping; @RestController @CrossOrigin @RequestMapping("/api/" + App.API_VERSION + "/assignments") +@Api(tags = { + "Assignments" }, value = "Assignments", description = "Assignment is representation of student willing to join given group (lecture or calss)") public class AssignmentsController extends TokenBasedController { @Autowired diff --git a/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java b/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java index f3b88fa..9ccd0f5 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java @@ -4,6 +4,8 @@ import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.Api; + import java.util.List; import com.plannaplan.App; @@ -28,6 +30,8 @@ import org.springframework.web.bind.annotation.RequestMapping; @RestController @CrossOrigin @RequestMapping("/api/" + App.API_VERSION + "/commisions") +@Api(tags = { + "Commisions" }, value = "Commisions", description = "Commision is representation of student selected assignments at time. All assignments are attached to some commision so we can see current assignments and also browse histroy of changes for given user") public class CommisionController extends TokenBasedController { @Autowired diff --git a/restservice/src/main/java/com/plannaplan/controllers/ConfigController.java b/restservice/src/main/java/com/plannaplan/controllers/ConfigController.java index 5d5456b..473c018 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/ConfigController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/ConfigController.java @@ -19,10 +19,13 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.multipart.MultipartFile; +import io.swagger.annotations.Api; + @RestController @CrossOrigin @RequestMapping("/api/" + App.API_VERSION + "/configurator") @EnableGlobalMethodSecurity(prePostEnabled = true) +@Api(tags = { "ConfigController" }, value = "ConfigController", description = "All endpoints to configure an app") public class ConfigController { @Autowired diff --git a/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java b/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java index 03db837..d648f61 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java @@ -14,6 +14,9 @@ import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.RestController; + +import io.swagger.annotations.Api; + import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -22,16 +25,19 @@ import com.plannaplan.responses.models.abstracts.CoursesResponse; @RestController @CrossOrigin @RequestMapping("/api/" + App.API_VERSION + "/courses") +@Api(tags = { + "Course" }, value = "Course", description = "Endpoints to deal with courses. All courses can have classes, lectures or both.") public class CoursesController { @Autowired private CourseService courseService; @GetMapping("/all") - public ResponseEntity> getMethodName(@RequestParam(name = "groups", defaultValue = "false") Boolean groups) { + public ResponseEntity> getMethodName( + @RequestParam(name = "groups", defaultValue = "false") Boolean groups) { List courses = this.courseService.getAllCourses(); if (groups) { final List response = CoursesResponseMappers - .mapToGetCoursesWithGroupsResponse(courses); + .mapToGetCoursesWithGroupsResponse(courses); return new ResponseEntity<>(response, HttpStatus.OK); } final List response = CoursesResponseMappers.mapToGetCoursesResponse(courses); diff --git a/restservice/src/main/java/com/plannaplan/controllers/GroupController.java b/restservice/src/main/java/com/plannaplan/controllers/GroupController.java index 0d795ff..1332028 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/GroupController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/GroupController.java @@ -19,17 +19,22 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.Api; + @RestController @CrossOrigin @RequestMapping("/api/" + App.API_VERSION + "/groups") +@Api(tags = { + "Group" }, value = "Group", description = "Enpoints to deal with gorups. Group is related directly to course and can be either class and lecture") public class GroupController { @Autowired private GroupService groupService; @GetMapping("/course/{id}") - - public ResponseEntity> getCourses(@PathVariable(name = "id") Long id, + + public ResponseEntity> getCourses( + @PathVariable(name = "id") Long id, @RequestParam(name = "capacity", defaultValue = "true") Boolean capacity) { List groups = this.groupService.getGroupsByCourse(id); if (capacity) { diff --git a/restservice/src/main/java/com/plannaplan/controllers/TokenController.java b/restservice/src/main/java/com/plannaplan/controllers/TokenController.java index 5093783..840dffb 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/TokenController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/TokenController.java @@ -13,8 +13,11 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.Api; + @RestController @CrossOrigin +@Api(tags = { "Token" }, value = "Token", description = "Enpoints to get authorization.") public class TokenController { private final static String SERVICE_URL = "http://localhost:3000"; diff --git a/restservice/src/main/java/com/plannaplan/controllers/UsersController.java b/restservice/src/main/java/com/plannaplan/controllers/UsersController.java index ebfa06e..bd5e69a 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/UsersController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/UsersController.java @@ -15,6 +15,9 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.RestController; + +import io.swagger.annotations.Api; + import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -23,6 +26,7 @@ import org.springframework.web.bind.annotation.RequestParam; @CrossOrigin @RequestMapping("/api/" + App.API_VERSION + "/users") @EnableGlobalMethodSecurity(prePostEnabled = true) +@Api(tags = { "Users" }, value = "Users", description = "Endpoints to deal with users.") public class UsersController { @Autowired private UserService userService;