Update swagger generator to OpenAPI 3.0
[netconf.git] / restconf / sal-rest-docgen / src / main / java / org / opendaylight / netconf / sal / rest / doc / api / ApiDocService.java
index e30dff77bf56824c6fa76fff1b5e84f39039e4b1..1e7a7b98389920c2a8237b05d9fbcb18ba189ccb 100644 (file)
@@ -24,14 +24,10 @@ import javax.ws.rs.core.Response;
 @Path("/")
 public interface ApiDocService {
 
-    /**
-     * Generates index document for Swagger UI. This document lists out all
-     * modules with link to get APIs for each module. The API for each module is
-     * served by <code> getDocByModule()</code> method.
-     */
     @GET
+    @Path("/single")
     @Produces(MediaType.APPLICATION_JSON)
-    public Response getRootDoc(@Context javax.ws.rs.core.UriInfo uriInfo);
+    Response getAllModulesDoc(@Context javax.ws.rs.core.UriInfo uriInfo);
 
     /**
      * Generates Swagger compliant document listing APIs for module.
@@ -39,8 +35,8 @@ public interface ApiDocService {
     @GET
     @Path("/{module}({revision})")
     @Produces(MediaType.APPLICATION_JSON)
-    public Response getDocByModule(@PathParam("module") String module,
-            @PathParam("revision") String revision, @Context javax.ws.rs.core.UriInfo uriInfo);
+    Response getDocByModule(@PathParam("module") String module,
+                            @PathParam("revision") String revision, @Context javax.ws.rs.core.UriInfo uriInfo);
 
     /**
      * Redirects to embedded swagger ui.
@@ -48,7 +44,7 @@ public interface ApiDocService {
     @GET
     @Path("/ui")
     @Produces(MediaType.TEXT_HTML)
-    public Response getApiExplorer(@Context javax.ws.rs.core.UriInfo uriInfo);
+    Response getApiExplorer(@Context javax.ws.rs.core.UriInfo uriInfo);
 
     /**
      * Generates index document for Swagger UI. This document lists out all
@@ -58,22 +54,25 @@ public interface ApiDocService {
     @GET
     @Path("/mounts")
     @Produces(MediaType.APPLICATION_JSON)
-    public Response getListOfMounts(@Context javax.ws.rs.core.UriInfo uriInfo);
+    Response getListOfMounts(@Context javax.ws.rs.core.UriInfo uriInfo);
 
+    /**
+     * Generates Swagger compliant document listing APIs for module.
+     */
     @GET
-    @Path("/mounts/{instance}")
+    @Path("/mounts/{instance}/{module}({revision})")
     @Produces(MediaType.APPLICATION_JSON)
-    public Response getMountRootDoc(@PathParam("instance") String instanceNum,
-            @Context javax.ws.rs.core.UriInfo uriInfo);
+    Response getMountDocByModule(@PathParam("instance") String instanceNum,
+                                 @PathParam("module") String module, @PathParam("revision") String revision,
+                                 @Context javax.ws.rs.core.UriInfo uriInfo);
 
     /**
-     * Generates Swagger compliant document listing APIs for module.
+     * Generates Swagger compliant document listing APIs for all modules of mount point.
      */
     @GET
-    @Path("/mounts/{instance}/{module}({revision})")
+    @Path("/mounts/{instance}")
     @Produces(MediaType.APPLICATION_JSON)
-    public Response getMountDocByModule(@PathParam("instance") String instanceNum,
-            @PathParam("module") String module, @PathParam("revision") String revision,
-            @Context javax.ws.rs.core.UriInfo uriInfo);
+    Response getMountDoc(@PathParam("instance") String instanceNum,
+                         @Context javax.ws.rs.core.UriInfo uriInfo);
 
 }