From f5363e4c51e5cf4c3bb356e7bc25ea3ae810fc4f Mon Sep 17 00:00:00 2001 From: prachi Date: Fri, 11 May 2012 18:58:19 -0700 Subject: [PATCH] CS- 14640 Output of ec2-describe-instances should provide security group,private ipaddress, ipaddress and hypervisor information. Changes: - Fixed response of describe Instances --- .../bridge/service/EC2SoapServiceImpl.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/awsapi/src/com/cloud/bridge/service/EC2SoapServiceImpl.java b/awsapi/src/com/cloud/bridge/service/EC2SoapServiceImpl.java index a5d66a214ff..da0b20c11f3 100644 --- a/awsapi/src/com/cloud/bridge/service/EC2SoapServiceImpl.java +++ b/awsapi/src/com/cloud/bridge/service/EC2SoapServiceImpl.java @@ -1157,9 +1157,18 @@ public class EC2SoapServiceImpl implements AmazonEC2SkeletonInterface { GroupSetType param4 = new GroupSetType(); GroupItemType param5 = new GroupItemType(); - param5.setGroupId( (null == inst.getGroup() ? "" : inst.getGroup())); - param4.addItem( param5 ); - param3.setGroupSet( param4 ); + + String[] groups = inst.getGroupSet(); + if (null == groups || 0 == groups.length) { + param5.setGroupId(""); + param4.addItem( param5 ); + } else { + for (String group : groups) { + param5.setGroupId(group); + param4.addItem( param5 ); + } + } + param3.setGroupSet( param4 ); RunningInstancesSetType param6 = new RunningInstancesSetType(); RunningInstancesItemType param7 = new RunningInstancesItemType(); @@ -1207,7 +1216,7 @@ public class EC2SoapServiceImpl implements AmazonEC2SkeletonInterface { param7.setVpcId( "" ); // String ipAddr = inst.getPrivateIpAddress(); // param7.setPrivateIpAddress((null != ipAddr ? ipAddr : "")); - param7.setPrivateIpAddress(inst.getIpAddress()); + param7.setPrivateIpAddress(inst.getPrivateIpAddress()); param7.setIpAddress( inst.getIpAddress()); StateReasonType param13 = new StateReasonType(); @@ -1235,6 +1244,7 @@ public class EC2SoapServiceImpl implements AmazonEC2SkeletonInterface { param7.setBlockDeviceMapping( param14 ); param7.setInstanceLifecycle( "" ); param7.setSpotInstanceRequestId( "" ); + param7.setHypervisor(inst.getHypervisor()); param6.addItem( param7 ); param3.setInstancesSet( param6 );