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=43b29ad846167bd466d3d0c1d73cac1f09273b3f;hb=b595576737ce9cf1b1e1db3589f549ca36bc73f6;hpb=c3966c0f911b119e9493c4faa7b8eba2ecbc7457 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 43b29ad..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 @@ -16,50 +16,90 @@ 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.ThirdpatySdncManager; +import org.onap.aai.esr.resource.ServiceTest; +import org.onap.aai.esr.resource.ThirdpartySdncManager; import org.onap.aai.esr.resource.VimManager; 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); - @Override - public String getName() { - return "ONAP-ESR"; - } + public static void main(String[] args) throws Exception { + new ExtsysApp().run(args); + } - @Override - public void run(ExtsysAppConfiguration configuration, Environment environment) { - LOGGER.info("Start to initialize esr."); - environment.jersey().register(new EmsManager()); - environment.jersey().register(new ThirdpatySdncManager()); - environment.jersey().register(new VimManager()); - environment.jersey().register(new VnfmManager()); + @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()); + 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."); + } -// String MSB_IP="127.0.0.1"; - String MSB_IP=configuration.getMsbIp(); - Integer MSB_Port= Integer.valueOf(configuration.getMsbPort()); - MSBServiceClient msbClient = new MSBServiceClient(MSB_IP, MSB_Port); - MsbHelper helper = new MsbHelper(msbClient); - try { - helper.registerMsb(); - } catch (Exception e) { - LOGGER.error("Register esr-server to msb by java-sdk failed", e); - } - 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); + } + }