Eliminate OpenApiApplication class 45/106145/7
authorIvan Hrasko <ivan.hrasko@pantheon.tech>
Wed, 24 May 2023 13:20:32 +0000 (15:20 +0200)
committerIvan Hrasko <ivan.hrasko@pantheon.tech>
Tue, 9 Jan 2024 11:56:41 +0000 (12:56 +0100)
Eliminate OpenApiApplication by making it an anonymous
class in its sole user.

JIRA: NETCONF-1221
Change-Id: Idfdc00e66e15d812e1921c8e8404c50e8185fa7f
Signed-off-by: Ivan Hrasko <ivan.hrasko@pantheon.tech>
restconf/restconf-openapi/src/main/java/org/opendaylight/restconf/openapi/jaxrs/OpenApiApplication.java [deleted file]
restconf/restconf-openapi/src/main/java/org/opendaylight/restconf/openapi/jaxrs/WebInitializer.java

diff --git a/restconf/restconf-openapi/src/main/java/org/opendaylight/restconf/openapi/jaxrs/OpenApiApplication.java b/restconf/restconf-openapi/src/main/java/org/opendaylight/restconf/openapi/jaxrs/OpenApiApplication.java
deleted file mode 100644 (file)
index ddfa6bd..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.restconf.openapi.jaxrs;
-
-import static java.util.Objects.requireNonNull;
-
-import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
-import java.util.Set;
-import javax.ws.rs.core.Application;
-import org.opendaylight.restconf.openapi.api.OpenApiService;
-
-// FIXME: hide this class
-public final class OpenApiApplication extends Application {
-    private final OpenApiService openApiService;
-
-    public OpenApiApplication(final OpenApiService openApiService) {
-        this.openApiService = requireNonNull(openApiService);
-    }
-
-    @Override
-    public Set<Object> getSingletons() {
-        return Set.of(openApiService, new JacksonJaxbJsonProvider());
-    }
-}
index 6ff25a389d2859ef1882bef068bc50d46617cbad..c9060e87b5e87347987d6216933c2771b13e2f5a 100644 (file)
@@ -7,10 +7,13 @@
  */
 package org.opendaylight.restconf.openapi.jaxrs;
 
+import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
+import java.util.Set;
 import javax.annotation.PreDestroy;
 import javax.inject.Inject;
 import javax.inject.Singleton;
 import javax.servlet.ServletException;
+import javax.ws.rs.core.Application;
 import org.opendaylight.aaa.web.ResourceDetails;
 import org.opendaylight.aaa.web.ServletDetails;
 import org.opendaylight.aaa.web.WebContext;
@@ -44,7 +47,12 @@ public final class WebInitializer implements AutoCloseable {
             .contextPath("/openapi")
             .supportsSessions(true)
             .addServlet(ServletDetails.builder()
-                .servlet(servletSupport.createHttpServletBuilder(new OpenApiApplication(openApiService)).build())
+                .servlet(servletSupport.createHttpServletBuilder(new Application() {
+                    @Override
+                    public Set<Object> getSingletons() {
+                        return Set.of(openApiService, new JacksonJaxbJsonProvider());
+                    }
+                }).build())
                 .addUrlPattern("/api/v3/*")
                 .build())
             .addResource(ResourceDetails.builder().name("/explorer").build());