Add swagger docs for gizmo APIs
[aai/gizmo.git] / src / main / java / org / onap / crud / config / JerseyConfig.java
index 654ff81..60167d5 100644 (file)
  */
 package org.onap.crud.config;
 
+import javax.annotation.PostConstruct;
+import javax.ws.rs.ApplicationPath;
+
 import org.glassfish.jersey.server.ResourceConfig;
 import org.onap.crud.service.CrudRestService;
 import org.onap.crud.service.JaxrsEchoService;
 import org.springframework.stereotype.Component;
 
+import io.swagger.jaxrs.config.BeanConfig;
+import io.swagger.jaxrs.listing.ApiListingResource;
+import io.swagger.jaxrs.listing.SwaggerSerializers;
+
 /**
  * Registers Crud Rest interface as JAX-RS endpoints.
  */
+
+@ApplicationPath("/services")
 @Component
 public class JerseyConfig extends ResourceConfig {
 
@@ -35,5 +44,26 @@ public class JerseyConfig extends ResourceConfig {
         register(crudRestService);
         register(jaxrsEchoService);
     }
+    
+    @PostConstruct
+    public void init() {
+      // Register components where DI is needed
+      this.SwaggerConfig();
+    }
+  private void SwaggerConfig() {
+      this.register(ApiListingResource.class);
+      this.register(SwaggerSerializers.class);
+
+      BeanConfig swaggerConfigBean = new BeanConfig();
+      swaggerConfigBean.setConfigId("Gizmo");
+      swaggerConfigBean.setTitle("Gizmo Rest API ");
+      swaggerConfigBean.setVersion("v1");
+      swaggerConfigBean.setContact("Amdocs Inc.");
+      swaggerConfigBean.setSchemes(new String[] { "https" });
+      swaggerConfigBean.setBasePath("/services");
+      swaggerConfigBean.setResourcePackage("org.onap.crud");
+      swaggerConfigBean.setPrettyPrint(true);
+      swaggerConfigBean.setScan(true);
+    }
 
 }