package org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.process;
+import java.io.IOException;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
+import org.apache.commons.lang3.StringUtils;
+import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.ResultRequestUtil;
import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.VnfmUtil;
import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.adapter.impl.AdapterResourceManager;
import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.constant.Constant;
this.vnfmDao = vnfmDao;
}
+ private String configedVduType;
+
+
+ /**
+ * @param configedVduType The configedVduType to set.
+ */
+ public void setConfigedVduType(String configedVduType) {
+ this.configedVduType = configedVduType;
+ }
+
/**
* Scale vnf
*
LOG.error("function=scaleVNF,can't find vnfm from db by vnfmId=" + vnfmId);
return restJson;
}
+ if(StringUtils.isNotEmpty(configedVduType)) {
+ vnfObject.put("configedVduType", configedVduType);
+ }
restJson = (new VnfMgrVnfm()).scaleVnf(vnfObject, vnfmObjcet, vnfmId, vnfInstanceId);
} catch(JSONException e) {
LOG.error("function=scaleVNF, msg=JSONException occurs, e={}.", e);
* @return
* @since VFC 1.0
*/
- public JSONObject getVnf(String vnfId, String vnfmId) {
+ public JSONObject getVnf(String vnfId, String vnfmId) throws IOException {
LOG.warn("function=getVnf ,msg=enter to get a vnf, vnfId:{}, vnfmId:{}", vnfId, vnfmId);
JSONObject restJson = new JSONObject();
restJson.put(Constant.RETCODE, Constant.REST_FAIL);
}
restJson = (new VnfMgrVnfm()).getVnf(vnfmObjcet, vnfId);
+ JSONObject ipObj = (new VnfMgrVnfm()).getIp(vnfmObjcet, vnfId);
- return restJson.getInt(Constant.RETCODE) == Constant.REST_FAIL ? restJson : getVnfBody(restJson);
+ return restJson.getInt(Constant.RETCODE) == Constant.REST_FAIL ? restJson : getVnfBody(restJson, ipObj);
} catch(JSONException e) {
LOG.error("function=getVnf, msg=JSONException occurs, e={}.", e);
return restJson;
}
- private JSONObject getVnfBody(JSONObject restJson) {
+ private JSONObject getVnfBody(JSONObject restJson, JSONObject ipObj) {
try {
JSONObject vnfInfoJson = new JSONObject();
JSONObject basicInfoJson = new JSONObject();
JSONObject retJson = restJson.getJSONArray("data").getJSONObject(0);
- basicInfoJson.put("vnfInstanceId", retJson.getString("id"));
- basicInfoJson.put("vnfInstanceName", retJson.getString("vapp_name"));
- basicInfoJson.put("vnfInstanceDescription", "vFW");
+ basicInfoJson.put("vnfInstanceId", retJson.getString("vnf_id"));
+ basicInfoJson.put("vnfInstanceName", retJson.getString("vnf_name"));
+ basicInfoJson.put("vnfInstanceDescription", "");
- Vnfm vnfm = vnfmDao.getVnfmById(retJson.getString("id"));
- basicInfoJson.put(Constant.VNFDID, vnfm == null ? "" : vnfm.getVnfdId());
- basicInfoJson.put("vnfdPackageId", vnfm == null ? "" : vnfm.getVnfPackageId());
- basicInfoJson.put("version", vnfm == null ? "" : vnfm.getVersion());
+ basicInfoJson.put(Constant.VNFDID, retJson.getString("vnfd_id"));
+ basicInfoJson.put("vnfdPackageId", retJson.getString("vnfd_id"));
+ basicInfoJson.put("version", "1.0");
basicInfoJson.put("vnfProvider", "hw");
- basicInfoJson.put("vnfType", retJson.get("vapp_type"));
+ basicInfoJson.put("vnfType", retJson.get("vnf_type"));
basicInfoJson.put("vnfStatus", retJson.getString(Constant.STATUS));
-
+ if(ipObj.getInt(Constant.RETCODE) == Constant.REST_SUCCESS) {
+ basicInfoJson.put("ipInfo", ipObj.getJSONObject("data"));
+ }
vnfInfoJson.put("vnfInfo", basicInfoJson);
vnfInfoJson.put(Constant.RETCODE, Constant.REST_SUCCESS);
return vnfInfoJson;
restJson.put("vapp_name", vnfObject.get("vnfInstanceName"));
restJson.put("project_id", vnfmId);
restJson.put("parameters", resObject.getJSONObject("parameters"));
+ if(resObject.containsKey("emsUuid")) {
+ restJson.put("emsUuid", resObject.getString("emsUuid"));
+ }
restJson.put("nfvo_id", "");
restJson.put("location", "");
restJson.put("vnfm_id", vnfmId);
JSONObject responseJson = new JSONObject();
JSONObject jobInfoJson = new JSONObject();
JSONObject jobInfo = restJson.getJSONObject("data").getJSONObject("job_info");
- jobInfoJson.put("jobId", jobInfo.getString("job_id"));
- responseJson.put("progress", jobInfo.getString("task_progress_rate"));
- responseJson.put("status", jobInfo.getString("task_status"));
+ jobInfoJson.put("jobId", jobInfo.getString("job_id") + ":job");
+ String taskProgress = jobInfo.getString("task_progress_rate");
+ responseJson.put("progress", taskProgress);
+
+ int responseId = Integer.parseInt(taskProgress);
+ String taskStatus = jobInfo.getString("task_status");
+ if(taskStatus.equalsIgnoreCase("Successfully") || taskStatus.equalsIgnoreCase("finished")) {
+ responseJson.put("status", "finished");
+ responseId++;
+ } else if(taskStatus.equalsIgnoreCase("Failed")) {
+ responseJson.put("status", "error");
+ responseId++;
+ } else {
+ responseJson.put("status", "processing");
+ }
responseJson.put("errorCode", jobInfo.getString("error_code"));
- responseJson.put("responseId", jobInfo.getString("task_progress_rate"));
+ responseJson.put("responseId", String.valueOf(responseId));
jobInfoJson.put("responsedescriptor", responseJson);
LOG.warn("function=getJobBody, jobInfoJson: {}", jobInfoJson);
return jobInfoJson.toString();
}
+
+ public JSONObject getVmsFromVnfm(String vnfmId, String vnfInstanceId) {
+ JSONObject restJson = new JSONObject();
+ JSONObject vnfmObjcet = VnfmUtil.getVnfmById(vnfmId);
+ if(vnfmObjcet.isNullObject()) {
+ LOG.error("function=getVmsFromVnfm, msg=vnfm not exists, vnfmId: {}", vnfmId);
+ restJson.put("message", "vnfm not exists");
+ return restJson;
+ }
+ String url = "";
+ if(vnfInstanceId == null) {
+ url = "/v2/vapps/instances/query/vms";
+ } else {
+ url = String.format("/v2/vapps/instances/%s/vm", vnfInstanceId);
+ }
+ restJson = ResultRequestUtil.call(vnfmObjcet, url, Constant.GET, null, Constant.CERTIFICATE);
+ LOG.info("function=getVmsFromVnfm, restJson: {}", restJson);
+ return restJson;
+ }
+
}