X-Git-Url: https://gerrit.onap.org/r/gitweb?p=aai%2Fesr-server.git;a=blobdiff_plain;f=esr-mgr%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faai%2Fesr%2FExtsysApp.java;h=290df15b877cf6e6e4f4149ba1137b2dfd4f8074;hp=358fb075de803a3706341e265aa40201804bc658;hb=16e963509621830d8828054750f9512b535b1948;hpb=4d2e7d006e7f3a166bb883b7a3d8ba223d0f8625 diff --git a/esr-mgr/src/main/java/org/onap/aai/esr/ExtsysApp.java b/esr-mgr/src/main/java/org/onap/aai/esr/ExtsysApp.java index 358fb07..290df15 100644 --- a/esr-mgr/src/main/java/org/onap/aai/esr/ExtsysApp.java +++ b/esr-mgr/src/main/java/org/onap/aai/esr/ExtsysApp.java @@ -1,5 +1,5 @@ /** - * Copyright 2016-2017 ZTE Corporation. + * Copyright 2016-2018 ZTE Corporation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ package org.onap.aai.esr; import org.onap.aai.esr.common.MsbConfig; import org.onap.aai.esr.externalservice.msb.MsbHelper; import org.onap.aai.esr.resource.EmsManager; +import org.onap.aai.esr.resource.PnfManager; import org.onap.aai.esr.resource.ServiceTest; import org.onap.aai.esr.resource.ThirdpartySdncManager; import org.onap.aai.esr.resource.VimManager; @@ -27,7 +28,12 @@ import org.onap.msb.sdk.httpclient.msb.MSBServiceClient; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import io.dropwizard.Application; +import io.dropwizard.server.SimpleServerFactory; import io.dropwizard.setup.Environment; +import io.swagger.jaxrs.config.BeanConfig; +import io.swagger.jaxrs.listing.ApiListingResource; + +import com.fasterxml.jackson.annotation.JsonInclude; public class ExtsysApp extends Application { @@ -52,8 +58,10 @@ public class ExtsysApp extends Application { environment.jersey().register(new ThirdpartySdncManager()); environment.jersey().register(new VimManager()); environment.jersey().register(new VnfmManager()); + environment.jersey().register(new PnfManager()); environment.jersey().register(new ServiceTest()); - if ("true".equals(configuration.getRegistByHand())) { + initSwaggerConfig(environment, configuration); + if ("false".equals(configuration.getRegistByHand())) { String MSB_IP = configuration.getMsbDiscoveryIp(); Integer MSB_Port = Integer.valueOf(configuration.getMsbDiscoveryPort()); MSBServiceClient msbClient = new MSBServiceClient(MSB_IP, MSB_Port); @@ -67,5 +75,33 @@ public class ExtsysApp extends Application { } LOGGER.info("Initialize extsys finished."); } + + /** + * initialize swagger configuration. + * + * @param environment environment information + * @param configuration catalogue configuration + */ + private void initSwaggerConfig(Environment environment, ExtsysAppConfiguration configuration) { + environment.jersey().register(new ApiListingResource()); + environment.getObjectMapper().setSerializationInclusion(JsonInclude.Include.NON_NULL); + BeanConfig config = new BeanConfig(); + config.setTitle("ONAP ESR Service rest API"); + config.setVersion("1.0.0"); + config.setResourcePackage("org.onap.aai.esr.resource"); + // set rest api basepath in swagger + SimpleServerFactory simpleServerFactory = + (SimpleServerFactory) configuration.getServerFactory(); + String basePath = simpleServerFactory.getApplicationContextPath(); + String rootPath = simpleServerFactory.getJerseyRootPath().get(); + rootPath = rootPath.substring(0, rootPath.indexOf("/*")); + basePath = + basePath.equals("/") ? rootPath : (new StringBuilder()).append(basePath) + .append(rootPath).toString(); + LOGGER.info("getApplicationContextPath: " + basePath); + config.setBasePath(basePath); + config.setScan(true); + } + }