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=10d8a9fd24dc8ed3f69510a6ebb04db3cdd102f5;hp=e1db10825ce144d066c548e91e99cd1b79c1e67d;hb=b595576737ce9cf1b1e1db3589f549ca36bc73f6;hpb=769718b3e8b4e659299602701b575cf1b4b182c5 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 e1db108..10d8a9f 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 @@ -26,47 +26,80 @@ import org.onap.aai.esr.resource.VnfmManager; 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 { - private static final Logger LOGGER = LoggerFactory.getLogger(ExtsysApp.class); - - public static void main(String[] args) throws Exception { - new ExtsysApp().run(args); - } + private static final Logger LOGGER = LoggerFactory.getLogger(ExtsysApp.class); + + public static void main(String[] args) throws Exception { + new ExtsysApp().run(args); + } - @Override - public String getName() { - return "ONAP-ESR"; - } + @Override + public String getName() { + return "ONAP-ESR"; + } - @Override - public void run(ExtsysAppConfiguration configuration, Environment environment) { - LOGGER.info("Start to initialize esr."); - MsbConfig.setMsbServerAddr(configuration.getMsbServerAddr()); - MsbConfig.setMsbDiscoveryIp(configuration.getMsbDiscoveryIp()); - MsbConfig.setMsbDiscoveryPort(configuration.getMsbDiscoveryPort()); - environment.jersey().register(new EmsManager()); - environment.jersey().register(new ThirdpartySdncManager()); - environment.jersey().register(new VimManager()); - environment.jersey().register(new VnfmManager()); - environment.jersey().register(new ServiceTest()); - if (configuration.getRegistByHand().equals("true")){ - String MSB_IP=configuration.getMsbDiscoveryIp(); - Integer MSB_Port= Integer.valueOf(configuration.getMsbDiscoveryPort()); - MSBServiceClient msbClient = new MSBServiceClient(MSB_IP, MSB_Port); - MsbHelper helper = new MsbHelper(msbClient); - try { - helper.registerMsb(); - LOGGER.info("Register esr-server to msb by java-sdk finished"); - } catch (Exception e) { - LOGGER.error("Register esr-server to msb by java-sdk failed", e); - } + @Override + public void run(ExtsysAppConfiguration configuration, Environment environment) { + LOGGER.info("Start to initialize esr."); + MsbConfig.setMsbServerAddr(configuration.getMsbServerAddr()); + MsbConfig.setMsbDiscoveryIp(configuration.getMsbDiscoveryIp()); + MsbConfig.setMsbDiscoveryPort(configuration.getMsbDiscoveryPort()); + environment.jersey().register(new EmsManager()); + environment.jersey().register(new ThirdpartySdncManager()); + environment.jersey().register(new VimManager()); + environment.jersey().register(new VnfmManager()); + environment.jersey().register(new ServiceTest()); + 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); + MsbHelper helper = new MsbHelper(msbClient); + try { + helper.registerMsb(); + LOGGER.info("Register esr-server to msb by java-sdk finished"); + } catch (Exception e) { + LOGGER.error("Register esr-server to msb by java-sdk failed", e); + } + } + LOGGER.info("Initialize extsys finished."); } - 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); + } + }