This is an automated email from the ASF dual-hosted git repository. sebawagner pushed a commit to branch feature/OPENMEETINGS-2420-generate-swagger-improvements in repository https://gitbox.apache.org/repos/asf/openmeetings.git
commit 9fcc79f356293b79d6437161666de55b27663716 Author: Sebastian Wagner <seba.wag...@gmail.com> AuthorDate: Thu Sep 2 16:34:07 2021 +1200 OPENMEETINGS-2420 Update documentation and tagging for documenting Rest API. Sync with website. --- openmeetings-webservice/pom.xml | 5 +++++ .../org/apache/openmeetings/webservice/CalendarWebService.java | 3 +++ .../java/org/apache/openmeetings/webservice/ErrorWebService.java | 3 +++ .../java/org/apache/openmeetings/webservice/FileWebService.java | 4 ++++ .../java/org/apache/openmeetings/webservice/GroupWebService.java | 4 ++++ .../java/org/apache/openmeetings/webservice/InfoWebService.java | 3 +++ .../org/apache/openmeetings/webservice/NetTestWebService.java | 9 +++++++++ .../org/apache/openmeetings/webservice/RecordingWebService.java | 3 +++ .../java/org/apache/openmeetings/webservice/RoomWebService.java | 3 +++ .../java/org/apache/openmeetings/webservice/UserWebService.java | 4 ++++ .../java/org/apache/openmeetings/webservice/WbWebService.java | 3 +++ 11 files changed, 44 insertions(+) diff --git a/openmeetings-webservice/pom.xml b/openmeetings-webservice/pom.xml index 26b822c..e00f678 100644 --- a/openmeetings-webservice/pom.xml +++ b/openmeetings-webservice/pom.xml @@ -139,6 +139,11 @@ <artifactId>jettison</artifactId> </dependency> <dependency> + <groupId>io.swagger.core.v3</groupId> + <artifactId>swagger-annotations</artifactId> + <version>2.1.10</version> + </dependency> + <dependency> <groupId>org.apache.openmeetings</groupId> <artifactId>openmeetings-util</artifactId> <version>${project.version}</version> diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java index 08aa687..59ef888 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java @@ -55,6 +55,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * CalendarService contains methods to create, edit delete calendar meetings * @@ -65,6 +67,7 @@ import org.springframework.stereotype.Service; @WebService(serviceName="org.apache.openmeetings.webservice.CalendarWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "CalendarService", description = "CalendarService contains methods to create, edit delete calendar meetings") @Path("/calendar") public class CalendarWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(CalendarWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java index fe2d166..42fe981 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java @@ -40,6 +40,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * * The Service contains methods to get localized errors @@ -51,6 +53,7 @@ import org.springframework.stereotype.Service; @WebService(serviceName="org.apache.openmeetings.webservice.ErrorWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "ErrorService", description = "The Service contains methods to get localized errors") @Path("/error") public class ErrorWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(ErrorWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java index e1ad214..4184710 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java @@ -57,6 +57,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * * Contains methods to import and upload files into the Files section of the @@ -69,6 +71,8 @@ import org.springframework.stereotype.Service; @WebService(serviceName="org.apache.openmeetings.webservice.FileWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "FileService", description = "Contains methods to import and upload files into the Files section of the\n" + + " conference room and the personal drive of any USER") @Path("/file") public class FileWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(FileWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java index 3ee3d38..ad6cfcc 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java @@ -56,6 +56,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * * The Service contains methods to login and create hash to directly enter @@ -68,6 +70,8 @@ import org.springframework.stereotype.Service; @WebService(serviceName="org.apache.openmeetings.webservice.GroupWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "GroupService", description = "The Service contains methods to login and create hash to directly enter\n" + + " conference rooms, recordings or the application in general") @Path("/group") public class GroupWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(GroupWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java index 28c15eb..3e3764e 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java @@ -32,6 +32,8 @@ import org.apache.openmeetings.db.dto.basic.Health; import org.apache.openmeetings.db.dto.basic.Info; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * * The Service contains methods to get info about the system @@ -43,6 +45,7 @@ import org.springframework.stereotype.Service; @WebService(serviceName="org.apache.openmeetings.webservice.InfoWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "InfoService", description = "The Service contains methods to get info about the system") @Path("/info") public class InfoWebService { /** diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java index de8831e..3f1b6fa 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java @@ -41,7 +41,16 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + +/** + * + * The Service contains methods to trigger a network test + * + * + */ @Service("netTestWebService") +@Tag(name = "NetTestService", description = "The Service contains methods to trigger a network test") @Path("/networktest") public class NetTestWebService { private static final Logger log = LoggerFactory.getLogger(NetTestWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java index d9a99b2..1607a60 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java @@ -45,6 +45,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * * The Service contains methods to work with recordings @@ -56,6 +58,7 @@ import org.springframework.stereotype.Service; @WebService(serviceName="org.apache.openmeetings.webservice.RecordingWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "RecordingService", description = "The Service contains methods to work with recordings") @Path("/record") public class RecordingWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(RecordingWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java index 414507c..452eda5 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java @@ -64,6 +64,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * RoomService contains methods to manipulate rooms and create invitation hash * @@ -74,6 +76,7 @@ import org.springframework.stereotype.Service; @WebService(serviceName="org.apache.openmeetings.webservice.RoomWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "RoomService", description = "RoomService contains methods to manipulate rooms and create invitation hash") @Path("/room") public class RoomWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(RoomWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java index 708882c..ad7e1b0 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java @@ -26,6 +26,8 @@ import static org.apache.openmeetings.webservice.Constants.TNS; import static org.apache.openmeetings.webservice.Constants.USER_SERVICE_NAME; import static org.apache.openmeetings.webservice.Constants.USER_SERVICE_PORT_NAME; +import io.swagger.v3.oas.annotations.tags.Tag; + import java.security.NoSuchAlgorithmException; import java.util.List; import java.util.Locale; @@ -84,6 +86,8 @@ import org.springframework.stereotype.Service; @WebService(serviceName = USER_SERVICE_NAME, targetNamespace = TNS, portName = USER_SERVICE_PORT_NAME) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "UserService", description = "The Service contains methods to login and create hash to directly enter\n" + + " conference rooms, recordings or the application in general") @Path("/user") public class UserWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(UserWebService.class); diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/WbWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/WbWebService.java index f8841be..3eb0d50 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/WbWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/WbWebService.java @@ -67,6 +67,8 @@ import org.springframework.stereotype.Service; import com.github.openjson.JSONArray; +import io.swagger.v3.oas.annotations.tags.Tag; + /** * WbService contains methods to manipulate whiteboard contents * @@ -75,6 +77,7 @@ import com.github.openjson.JSONArray; @WebService(serviceName="org.apache.openmeetings.webservice.WbWebService", targetNamespace = TNS) @Features(features = "org.apache.cxf.ext.logging.LoggingFeature") @Produces({MediaType.APPLICATION_JSON}) +@Tag(name = "WbService", description = "WbService contains methods to manipulate whiteboard contents") @Path("/wb") public class WbWebService extends BaseWebService { private static final Logger log = LoggerFactory.getLogger(WbWebService.class);