/**
- * 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.
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;
import org.onap.aai.esr.resource.VnfmManager;
+import org.onap.aai.esr.resource.NfvoManager;
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<ExtsysAppConfiguration> {
environment.jersey().register(new ThirdpartySdncManager());
environment.jersey().register(new VimManager());
environment.jersey().register(new VnfmManager());
+ environment.jersey().register(new NfvoManager());
+ environment.jersey().register(new PnfManager());
environment.jersey().register(new ServiceTest());
- if (configuration.getRegistByHand().equals("true")) {
+ 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);
}
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);
+ }
+
}