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%2Fwrapper%2FVimManagerWrapper.java;h=260d20986437e1d2d157f8f4d2adf5934b1aa322;hp=9058bc4fd9adf72a028082390f54534de5bfd235;hb=2c0e80cac349b7364d5b2b1f0b9650a4cd95ca18;hpb=31613a6b0099d38a8006ef0426e8e9fcaf046256 diff --git a/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VimManagerWrapper.java b/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VimManagerWrapper.java index 9058bc4..260d209 100644 --- a/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VimManagerWrapper.java +++ b/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VimManagerWrapper.java @@ -19,7 +19,6 @@ import java.util.ArrayList; import javax.ws.rs.core.Response; -import org.onap.aai.esr.entity.aai.CloudRegion; import org.onap.aai.esr.entity.aai.CloudRegionDetail; import org.onap.aai.esr.entity.aai.CloudRegionList; import org.onap.aai.esr.entity.rest.VimRegisterInfo; @@ -55,23 +54,37 @@ public class VimManagerWrapper { CloudRegionDetail cloudRegion = new CloudRegionDetail(); VimRegisterResponse result = new VimRegisterResponse(); cloudRegion = VimManagerUtil.vimRegisterInfo2CloudRegion(vimRegisterInfo); - String cloud_owner = vimRegisterInfo.getCloudOwner(); - String cloud_region_id = vimRegisterInfo.getCloudRegionId(); - + String cloudOwner = vimRegisterInfo.getCloudOwner(); + String cloudRegionId = vimRegisterInfo.getCloudRegionId(); try { - CloudRegionProxy.registerVim(cloud_owner, cloud_region_id, cloudRegion); - result.setCloudOwner(cloud_owner); - result.setCloudRegionId(cloud_region_id); + CloudRegionProxy.registerVim(cloudOwner, cloudRegionId, cloudRegion); + result.setCloudOwner(cloudOwner); + result.setCloudRegionId(cloudRegionId); return Response.ok(result).build(); } catch (Exception e) { e.printStackTrace(); return Response.serverError().build(); } } + public Response updateVim(VimRegisterInfo vimRegisterInfo) { + LOG.info("Start update VIM, input VIM info is: " + ExtsysUtil.objectToString(vimRegisterInfo)); + String cloudOwner = vimRegisterInfo.getCloudOwner(); + String cloudRegionId = vimRegisterInfo.getCloudRegionId(); + String resourceVersion = getResourceVersion(cloudOwner, cloudRegionId); + CloudRegionDetail cloudRegionDetail = new CloudRegionDetail(); + VimRegisterResponse result = new VimRegisterResponse(); + cloudRegionDetail = VimManagerUtil.vimRegisterInfo2CloudRegion(vimRegisterInfo); + cloudRegionDetail.setResouceVersion(resourceVersion); - public Response updateVim(VimRegisterInfo vim) { - //TODO - return Response.ok().build(); + try { + CloudRegionProxy.registerVim(cloudOwner, cloudRegionId, cloudRegionDetail); + result.setCloudOwner(cloudOwner); + result.setCloudRegionId(cloudRegionId); + return Response.ok(result).build(); + } catch (Exception e) { + e.printStackTrace(); + return Response.serverError().build(); + } } public Response queryVimListDetails() { @@ -131,6 +144,18 @@ public class VimManagerWrapper { return registeredVimInfo; } + private String getResourceVersion(String cloudOwner, String cloudRegionId) { + CloudRegionDetail cloudRegionDetail = new CloudRegionDetail(); + try { + String cloudRegionstr = CloudRegionProxy.queryVimDetail(cloudOwner, cloudRegionId); + cloudRegionDetail = new Gson().fromJson(cloudRegionstr, CloudRegionDetail.class); + return cloudRegionDetail.getResouceVersion(); + } catch (Exception error) { + LOG.error("query VIM detail failed ! cloud-owner = " + cloudOwner +", cloud-region-id = "+ cloudRegionId + error.getMessage()); + return null; + } + } + public Response delVim(String vimId) { //TODO return Response.noContent().build();