Adapt API to OpenApiObject removal
[netconf.git] / restconf / restconf-openapi / src / main / java / org / opendaylight / restconf / openapi / impl / OpenApiServiceImpl.java
index 4b8b31c3d4f0fd08a08073e79f1f847bb3ead27f..89eedd623826cfa32fcc258f836c1649c43a3186 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.restconf.openapi.impl;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.annotations.VisibleForTesting;
+import java.io.IOException;
 import java.util.List;
 import java.util.stream.Collectors;
 import javax.inject.Inject;
@@ -20,7 +21,6 @@ import org.opendaylight.mdsal.dom.api.DOMMountPointService;
 import org.opendaylight.mdsal.dom.api.DOMSchemaService;
 import org.opendaylight.restconf.openapi.api.OpenApiService;
 import org.opendaylight.restconf.openapi.model.MountPointInstance;
-import org.opendaylight.restconf.openapi.model.OpenApiObject;
 import org.opendaylight.restconf.openapi.mountpoints.MountPointOpenApi;
 import org.osgi.service.component.annotations.Activate;
 import org.osgi.service.component.annotations.Component;
@@ -68,20 +68,19 @@ public final class OpenApiServiceImpl implements OpenApiService {
     }
 
     @Override
-    public Response getAllModulesDoc(final UriInfo uriInfo) {
-        final DefinitionNames definitionNames = new DefinitionNames();
-        final OpenApiObject doc = openApiGeneratorRFC8040.getControllerModulesDoc(uriInfo, definitionNames);
-        return Response.ok(doc).build();
+    public Response getAllModulesDoc(final UriInfo uriInfo) throws IOException {
+        final OpenApiInputStream stream = openApiGeneratorRFC8040.getControllerModulesDoc(uriInfo);
+        return Response.ok(stream).build();
     }
 
     /**
      * Generates Swagger compliant document listing APIs for module.
      */
     @Override
-    public Response getDocByModule(final String module, final String revision, final UriInfo uriInfo) {
-        return Response.ok(
-            openApiGeneratorRFC8040.getApiDeclaration(module, revision, uriInfo))
-            .build();
+    public Response getDocByModule(final String module, final String revision, final UriInfo uriInfo)
+            throws IOException {
+        final OpenApiInputStream stream = openApiGeneratorRFC8040.getApiDeclaration(module, revision, uriInfo);
+        return Response.ok(stream).build();
     }
 
     /**
@@ -103,17 +102,17 @@ public final class OpenApiServiceImpl implements OpenApiService {
 
     @Override
     public Response getMountDocByModule(final String instanceNum, final String module,
-                                                     final String revision, final UriInfo uriInfo) {
-        final OpenApiObject api = mountPointOpenApiRFC8040.getMountPointApi(uriInfo, Long.parseLong(instanceNum),
-            module, revision);
-        return Response.ok(api).build();
+            final String revision, final UriInfo uriInfo) throws IOException {
+        final OpenApiInputStream stream =
+            mountPointOpenApiRFC8040.getMountPointApi(uriInfo, Long.parseLong(instanceNum), module, revision);
+        return Response.ok(stream).build();
     }
 
     @Override
-    public Response getMountDoc(final String instanceNum, final UriInfo uriInfo) {
+    public Response getMountDoc(final String instanceNum, final UriInfo uriInfo) throws IOException {
         final String stringPageNum = uriInfo.getQueryParameters().getFirst(PAGE_NUM);
-        final OpenApiObject api = mountPointOpenApiRFC8040.getMountPointApi(uriInfo,
-                Long.parseLong(instanceNum), stringPageNum);
-        return Response.ok(api).build();
+        final OpenApiInputStream stream =
+            mountPointOpenApiRFC8040.getMountPointApi(uriInfo, Long.parseLong(instanceNum), stringPageNum);
+        return Response.ok(stream).build();
     }
 }