summaryrefslogtreecommitdiffstats
path: root/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/msb/impl/MsbMgmrImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/msb/impl/MsbMgmrImpl.java')
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/msb/impl/MsbMgmrImpl.java130
1 files changed, 60 insertions, 70 deletions
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/msb/impl/MsbMgmrImpl.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/msb/impl/MsbMgmrImpl.java
index ed85fcfc..cb93b0be 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/msb/impl/MsbMgmrImpl.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/msb/impl/MsbMgmrImpl.java
@@ -23,74 +23,75 @@ import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
-import org.apache.http.client.ClientProtocolException;
-import org.apache.http.impl.client.HttpClientBuilder;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.common.bo.AdaptorEnv;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.constant.CommonConstants;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.http.client.HttpRequestProcessor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.json.JSONException;
+import org.json.JSONObject;
+import org.onap.msb.sdk.discovery.common.RouteException;
+import org.onap.msb.sdk.discovery.entity.MicroServiceFullInfo;
+import org.onap.msb.sdk.discovery.entity.MicroServiceInfo;
+import org.onap.msb.sdk.discovery.entity.RouteResult;
+import org.onap.msb.sdk.httpclient.msb.MSBServiceClient;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.msb.inf.IMsbMgmr;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
-import org.springframework.util.ResourceUtils;
-import org.springframework.web.bind.annotation.RequestMethod;
+
+import com.google.gson.Gson;
@Component
public class MsbMgmrImpl implements IMsbMgmr {
- private static final Logger logger = LogManager.getLogger("MsbMgmrImpl");
- @Autowired
- private HttpClientBuilder httpClientBuilder;
-
- @Autowired
- private AdaptorEnv adaptorEnv;
-
- @Value("${serviceName}")
- private String serviceName;
-
- @Value("${version}")
- private String version;
+ private static final Logger logger = LoggerFactory.getLogger(MsbMgmrImpl.class);
- @Value("${url}")
- private String url;
+ private Gson gson = new Gson();
- @Value("${protocol}")
- private String protocol;
+ private String msb_ip;
- @Value("${visualRange}")
- private String visualRange;
+ private int msb_port;
- @Value("${ip}")
- private String ip;
-
- @Value("${port}")
- private String port;
-
- @Value("${ttl}")
- private String ttl;
-
@Override
public void register() {
- String httpPath = CommonConstants.MSB_REGISTER_SERVICE_PATH;
- RequestMethod method = RequestMethod.POST;
-
try {
- String jsonStr = readVfcAdaptorInfoFromJsonFile();
- String registerResponse = operateHttpTask(jsonStr, httpPath, method);
- logger.info("registerResponse is ", registerResponse);
+ String msbInfoJsonStr = readMsbInfoFromJsonFile();
+ JSONObject totalJsonObj = new JSONObject(msbInfoJsonStr);
+ JSONObject serverJsonObj = totalJsonObj.getJSONObject("defaultServer");
+ msb_ip = serverJsonObj.getString("host");
+ msb_port = serverJsonObj.getInt("port");
+
+ String vfcAdaptorInfoJsonStr = readVfcAdaptorInfoFromJsonFile();
+ MicroServiceInfo msinfo = gson.fromJson(vfcAdaptorInfoJsonStr, MicroServiceInfo.class);
+
+ MSBServiceClient msbClient = new MSBServiceClient(msb_ip, msb_port);
+ MicroServiceFullInfo microServiceInfo = msbClient.registerMicroServiceInfo(msinfo);
+ logger.info("Registered service response info is " + microServiceInfo.toString());
+
} catch (IOException e) {
logger.error("Failed to read vfcadaptor info! ", e);
+ } catch (RouteException e) {
+ logger.error("Failed to register nokia vnfm driver! ", e);
+ } catch (JSONException e) {
+ logger.error("Failed to retrieve json info! ", e);
}
}
- public String readVfcAdaptorInfoFromJsonFile() throws IOException {
- InputStream ins = null;
+ private String readMsbInfoFromJsonFile() throws IOException {
+ String filePath = "/etc/conf/restclient.json";
+ String fileContent = getJsonStrFromFile(filePath);
+
+ return fileContent;
+ }
+
+ private String readVfcAdaptorInfoFromJsonFile() throws IOException {
+ String filePath = "/etc/adapterInfo/vnfmadapterinfo.json";
+ String fileContent = getJsonStrFromFile(filePath);
+
+ return fileContent;
+ }
+
+ public String getJsonStrFromFile(String filePath) throws IOException {
+ InputStream ins = null;
BufferedInputStream bins = null;
String fileContent = "";
- String fileName = getAppRoot() + "/etc/adapterInfo/vnfmadapterinfo.json";
+ String fileName = getAppRoot() + filePath;
try {
ins = new FileInputStream(fileName);
@@ -112,35 +113,24 @@ public class MsbMgmrImpl implements IMsbMgmr {
bins.close();
}
}
-
- return fileContent;
- }
+ return fileContent;
+ }
@Override
public void unregister() {
- String httpPath = String.format(CommonConstants.MSB_UNREGISTER_SERVICE_PATH, serviceName, version, ip, port);
- RequestMethod method = RequestMethod.DELETE;
-
try {
String jsonStr = readVfcAdaptorInfoFromJsonFile();
- String registerResponse = operateHttpTask(jsonStr, httpPath, method);
- logger.info("unregisterResponse is ", registerResponse);
+ MicroServiceInfo msinfo = gson.fromJson(jsonStr, MicroServiceInfo.class);
+
+ MSBServiceClient msbClient = new MSBServiceClient(msb_ip, msb_port);
+ RouteResult routeResult = msbClient.cancelMicroServiceInfo(msinfo.getServiceName(), msinfo.getVersion());
+ logger.info("unregistered service response info is " + routeResult.toString());
+
} catch (IOException e) {
- logger.error("Failed to unregister! ", e);
+ logger.error("Failed to read vfcadaptor info! ", e);
+ } catch (RouteException e) {
+ logger.error("Failed to register nokia vnfm driver! ", e);
}
-
- }
-
- public String operateHttpTask(String httpBodyObj, String httpPath, RequestMethod method) throws ClientProtocolException, IOException {
- String url=adaptorEnv.getMsbApiUriFront() + httpPath;
- HttpRequestProcessor processor = new HttpRequestProcessor(httpClientBuilder, method);
- processor.addHdeader(CommonConstants.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE);
-
- processor.addPostEntity(httpBodyObj);
-
- String responseStr = processor.process(url);
-
- return responseStr;
}
public String getAppRoot() {