CLOUDSTACK-2603. EC2RunInstances return xen or ovm as the response value for attribute "hypervisor"

This commit is contained in:
Likitha Shetty 2013-05-21 15:13:18 +05:30
parent 904a2a87f7
commit eb92135d55
1 changed files with 17 additions and 2 deletions

View File

@ -1458,7 +1458,7 @@ public class EC2Engine extends ManagerBase {
vm.setIpAddress(resp.getIpAddress());
vm.setAccountName(resp.getAccountName());
vm.setDomainId(resp.getDomainId());
vm.setHypervisor(resp.getHypervisor());
vm.setHypervisor( mapToAmazonHypervisorType(resp.getHypervisor()) );
vm.setServiceOffering( svcOffering.getName());
vm.setKeyPairName(resp.getKeyPairName());
instances.addInstance(vm);
@ -1860,7 +1860,7 @@ public class EC2Engine extends ManagerBase {
ec2Vm.setIpAddress(cloudVm.getIpAddress());
ec2Vm.setAccountName(cloudVm.getAccountName());
ec2Vm.setDomainId(cloudVm.getDomainId());
ec2Vm.setHypervisor(cloudVm.getHypervisor());
ec2Vm.setHypervisor( mapToAmazonHypervisorType(cloudVm.getHypervisor()) );
ec2Vm.setRootDeviceType(cloudVm.getRootDeviceType());
ec2Vm.setRootDeviceId(cloudVm.getRootDeviceId());
ec2Vm.setServiceOffering(serviceOfferingIdToInstanceType(cloudVm.getServiceOfferingId().toString()));
@ -2498,6 +2498,21 @@ public class EC2Engine extends ManagerBase {
return (resourceType.toLowerCase());
}
/**
* Map CloudStack hypervisor to CloudStack hypervisor
*
* @param CloudStack hypervisor
* @return Amazon hypervisor
*/
private String mapToAmazonHypervisorType( String hypervisor) {
if (hypervisor.equalsIgnoreCase("Xenserver"))
return("xen");
else if(hypervisor.equalsIgnoreCase("Ovm"))
return("ovm");
else
return ("");
}
/**
* Stop an instance
* Wait until one specific VM has stopped