+ public static boolean isTest = false;
+ private static IExternalSystem externalSystemproxy;
+ private static String transactionId = "9999";
+ private static String fromAppId = "esr-server";
+ private static String authorization = AaiCommon.getAuthenticationCredentials();
+ static {
+ ClientConfig config = new ClientConfig();
+ externalSystemproxy =
+ ConsumerFactory.createConsumer(MsbConfig.getExternalSystemAddr(), config, IExternalSystem.class);
+ }
+
+ public static void registerVnfm(String vnfmId, EsrVnfmDetail esrVnfmDetail) throws ExtsysException {
+ if (!isTest){
+ ClientConfig config = new ClientConfig(new VnfmRegisterProvider());
+ IExternalSystem registerVnfmServiceproxy =
+ ConsumerFactory.createConsumer(MsbConfig.getExternalSystemAddr(), config, IExternalSystem.class);
+ try {
+ registerVnfmServiceproxy.registerVNFM(transactionId, fromAppId, authorization, vnfmId, esrVnfmDetail);
+ } catch (Exception e) {
+ throw new ExtsysException("PUT VNFM to A&AI failed.", e);
+ }
+ }
+ }
+
+ public static String queryVnfmDetail(String vnfmId) throws ExtsysException {
+ if (isTest) {
+ String esrVnfmDetailStr = "{\"vnfm-id\":\"123456\",\"vim-id\":\"987654\","
+ + "\"certificate-url\":\"http://ip:5000/v3\",\"esr-system-info-list\":{"
+ + "\"esr-system-info\":[{\"esr-system-info-id\":\"qwerty\",\"system-name\":\"ONAP VNFM\","
+ + "\"type\":\"vnfm\",\"vendor\":\"zte\",\"version\":\"v1\","
+ + "\"service-url\":\"http://ip:8000\",\"user-name\":\"onap\","
+ + "\"password\":\"987654\",\"system-type\":\"VNFM\"}]}}";
+ return esrVnfmDetailStr;
+ }
+ try {
+ return externalSystemproxy.queryVNFMDetail(transactionId, fromAppId, authorization, vnfmId);
+ } catch (Exception e) {
+ throw new ExtsysException("Query VNFM detail from A&AI failed.", e);
+ }
+ }
+
+ public static String queryVnfmList() throws ExtsysException {
+ if (isTest) {
+ String vnfmListStr = "{\"esr-vnfm\": [{\"vnfm-id\": \"123456\",\"vim-id\": \"987654\","
+ + "\"certificate-url\": \"http://ip:5000/v3\",\"resource-version\": \"1\"}]}";
+ return vnfmListStr;
+ }
+ try {
+ return externalSystemproxy.queryVNFMList(transactionId, fromAppId, authorization);
+ } catch (Exception e) {
+ throw new ExtsysException("Query VNFM list from A&AI failed.", e);
+ }
+ }
+
+ public static void deleteVnfm(String vnfmId, String resourceVersion) throws ExtsysException {
+ if (!isTest) {
+ try {
+ externalSystemproxy.deleteVNFM(transactionId, fromAppId, authorization, vnfmId, resourceVersion);
+ } catch (Exception e) {
+ throw new ExtsysException("Delete VNFM from A&AI failed.", e);
+ }
+ }
+ }
+
+ public static void registerSdnc(String thirdpartySdncId, EsrThirdpartySdncDetail esrSdncDetail)
+ throws ExtsysException {
+ if (!isTest) {
+ ClientConfig config = new ClientConfig(new ThirdpartySdncRegisterProvider());
+ IExternalSystem registerSdncServiceproxy =
+ ConsumerFactory.createConsumer(MsbConfig.getExternalSystemAddr(), config, IExternalSystem.class);
+ try {
+ registerSdncServiceproxy.registerThirdpartySdnc(transactionId, fromAppId, authorization,
+ thirdpartySdncId, esrSdncDetail);
+ } catch (Exception e) {
+ throw new ExtsysException("PUT thirdparty SDNC to A&AI failed.", e);
+ }
+ }
+ }
+
+ public static String queryThirdpartySdncDetail(String thirdpartySdncId) throws ExtsysException {
+ if (isTest) {
+ String sdncDetail = "{\"thirdparty-sdnc-id\":\"123456\",\"location\":\"edge\","
+ + "\"product-name\":\"thirdparty SDNC\",\"esr-system-info-list\":{\"esr-system-info\":"
+ + "[{\"esr-system-info-id\":\"987654\",\"system-name\":\"SDNC_TEST\",\"type\":\"SDNC\","
+ + "\"vendor\":\"zte\",\"version\":\"v1\",\"service-url\":\"http://ip:8000\","
+ + "\"user-name\":\"nancy\",\"password\":\"123987\",\"system-type\":\"thirdparty_SDNC\","
+ + "\"protocol\":\"protocol\"}]}}";
+ return sdncDetail;
+ }
+ try {
+ return externalSystemproxy.queryThirdpartySdncDetail(transactionId, fromAppId, authorization,
+ thirdpartySdncId);
+ } catch (Exception e) {
+ throw new ExtsysException("Query thirdparty SDNC detail from A&AI failed.", e);
+ }
+ }
+
+ public static String querySdncList() throws ExtsysException {
+ if (isTest) {
+ String sdncList =
+ "{\"esr-thirdparty-sdnc\": [{\"thirdparty-sdnc-id\": \"123456\",\"location\": \"edge\","
+ + "\"product-name\": \"thirdparty SDNC\",\"resource-version\": \"1\"}]}";
+ return sdncList;
+ }
+ try {
+ return externalSystemproxy.queryThirdpartySdncList(transactionId, fromAppId, authorization);
+ } catch (Exception e) {
+ throw new ExtsysException("Query thirdparty SDNC list from A&AI failed.", e);
+ }
+ }
+
+ public static void deleteThirdpartySdnc(String sdncId, String resourceVersion) throws ExtsysException {
+ if (!isTest) {
+ try {
+ externalSystemproxy.deleteThirdpartySdnc(transactionId, fromAppId, authorization, sdncId,
+ resourceVersion);
+ } catch (Exception e) {
+ throw new ExtsysException("Delete thirdparty SDNC from A&AI failed.", e);
+ }
+ }
+ }
+
+ public static void registerEms(String emsId, EsrEmsDetail emsDetail) throws ExtsysException {
+ if (!isTest) {
+ ClientConfig config = new ClientConfig(new EmsRegisterProvider());
+ IExternalSystem registerEmsServiceproxy =
+ ConsumerFactory.createConsumer(MsbConfig.getExternalSystemAddr(), config, IExternalSystem.class);
+ try {
+ registerEmsServiceproxy.registerEMS(transactionId, fromAppId, authorization, emsId, emsDetail);
+ } catch (Exception e) {
+ throw new ExtsysException("PUT EMS to A&AI failed.", e);
+ }
+ }
+ }
+
+ public static String queryEmsDetail(String emsId) throws ExtsysException {
+ if (isTest) {
+ String emsDetailStr = "{\"ems-id\":\"123456\",\"esr-system-info-list\":{\"esr-system-info\":"
+ + "[{\"esr-system-info-id\":\"234567\",\"system-name\":\"EMS_TEST\",\"type\":\"sftp\","
+ + "\"vendor\":\"ZTE\",\"version\":\"V1\",\"user-name\":\"nancy\",\"password\":\"asdf\","
+ + "\"system-type\":\"EMS_RESOUCE\",\"ip-address\":\"ip\",\"port\":\"5000\","
+ + "\"passive\":true,\"remote-path\":\"/home/per\"},{\"esr-system-info-id\":\"345678\","
+ + "\"system-name\":\"EMS_TEST\",\"type\":\"sftp\",\"vendor\":\"ZTE\",\"version\":\"V1\","
+ + "\"user-name\":\"nancy\",\"password\":\"asdf\",\"system-type\":\"EMS_PERFORMANCE\","
+ + "\"ip-address\":\"ip\",\"port\":\"5000\",\"passive\":true,"
+ + "\"remote-path\":\"/home/per\"},{\"esr-system-info-id\":\"456789\","
+ + "\"system-name\":\"EMS_TEST\",\"vendor\":\"ZTE\",\"version\":\"V1\","
+ + "\"user-name\":\"nancy\",\"password\":\"987654\",\"system-type\":\"EMS_ALARM\","
+ + "\"ip-address\":\"ip\",\"port\":\"5000\"}]}}";
+ return emsDetailStr;
+ }
+ try {
+ return externalSystemproxy.queryEMSDetail(transactionId, fromAppId, authorization, emsId);
+ } catch (Exception e) {
+ throw new ExtsysException("Query EMS detail from A&AI failed.", e);
+ }
+ }