Use WhiteboardPattern annotations 39/133639/1
authorRavi Pendurty <ravi.pendurty@highstreet-technologies.com>
Tue, 14 Mar 2023 08:38:02 +0000 (14:08 +0530)
committerRavi Pendurty <ravi.pendurty@highstreet-technologies.com>
Tue, 14 Mar 2023 08:38:02 +0000 (14:08 +0530)
Introduced in OSGi Compendium 7

Issue-ID: CCSDK-3865
Signed-off-by: Ravi Pendurty <ravi.pendurty@highstreet-technologies.com>
Change-Id: Id2eca252a531470f2d6cd4792cf66861ae304a2f

sdnr/wt/helpserver/provider/pom.xml
sdnr/wt/helpserver/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/helpserver/HelpServlet.java
sdnr/wt/helpserver/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/helpserver/data/HelpInfrastructureObject.java
sdnr/wt/helpserver/provider/src/main/resources/OSGI-INF/blueprint/blueprint.xml

index e30263e..5251d6c 100644 (file)
@@ -22,6 +22,7 @@
   ~ ============LICENSE_END=======================================================
   ~
   -->
+
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
 
@@ -45,8 +46,8 @@
 
     <dependencies>
         <dependency>
-            <groupId>javax.servlet</groupId>
-            <artifactId>javax.servlet-api</artifactId>
+            <groupId>jakarta.servlet</groupId>
+            <artifactId>jakarta.servlet-api</artifactId>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <artifactId>org.osgi.core</artifactId>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>org.osgi.compendium</artifactId>
-            <scope>provided</scope>
-        </dependency>
         <dependency>
             <groupId>org.mockito</groupId>
             <artifactId>mockito-core</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>osgi.cmpn</artifactId>
+            <version>7.0.0</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
 
     <build>
index e9470ab..ddd6840 100644 (file)
@@ -26,14 +26,21 @@ import java.io.OutputStream;
 import java.net.URISyntaxException;
 import java.net.URLDecoder;
 import java.nio.file.Path;
+import javax.servlet.Servlet;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import org.onap.ccsdk.features.sdnr.wt.helpserver.data.HelpInfrastructureObject;
+import org.osgi.service.component.annotations.Component;
+import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
+import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+@HttpWhiteboardServletPattern("/help/*")
+@HttpWhiteboardServletName("HelpServlet")
+@Component(service = Servlet.class)
 public class HelpServlet extends HttpServlet implements AutoCloseable {
 
     private static Logger LOG = LoggerFactory.getLogger(HelpServlet.class);
index 35dbeec..4adb54d 100644 (file)
@@ -144,7 +144,7 @@ public class HelpInfrastructureObject extends JSONObject {
     public static void createFilesFromResources() {
 
         if (KARAFHELPDIRECTORY.exists()) {
-            LOG.info("Delete existing directory");
+            LOG.debug("Delete existing directory");
             try {
                 ExtactBundleResource.deleteRecursively(KARAFHELPDIRECTORY);
             } catch (IOException e1) {
@@ -152,17 +152,17 @@ public class HelpInfrastructureObject extends JSONObject {
             }
         }
 
-        LOG.info("Extract");
+        LOG.debug("Extract");
         try {
             Bundle b = FrameworkUtil.getBundle(HelpInfrastructureObject.class);
             if (b == null) {
-                LOG.info("No bundlereference: Use target in filesystem.");
+                LOG.debug("No bundlereference: Use target in filesystem.");
                 // URL helpRessource =
                 // JarFileUtils.stringToJarURL("target/helpserver-impl-0.4.0-SNAPSHOT.jar",KARAFBUNDLERESOURCEHELPROOT);
 
             } else {
-                LOG.info("Bundle location:{} State:{}", b.getLocation(), b.getState());
-                LOG.info("Write files from Resource");
+                LOG.debug("Bundle location:{} State:{}", b.getLocation(), b.getState());
+                LOG.debug("Write files from Resource");
                 ExtactBundleResource.copyBundleResoucesRecursively(b, "data/cache/com.highstreet.technologies.",
                         KARAFBUNDLERESOURCEHELPROOT);
             }
index 387aa45..354e802 100644 (file)
     <bean id="helpServlet"
           class="org.onap.ccsdk.features.sdnr.wt.helpserver.HelpServlet">
     </bean>
-
-    <service interface="javax.servlet.http.HttpServlet" ref="helpServlet">
-        <service-properties>
-            <entry key="alias" value="/help"/>
-        </service-properties>
-    </service>
+    
 </blueprint>