List of usage examples for com.amazonaws.services.ec2.model InstanceAttributeName GroupSet
InstanceAttributeName GroupSet
To view the source code for com.amazonaws.services.ec2.model InstanceAttributeName GroupSet.
Click Source Link
From source file:org.finra.dm.dao.impl.Ec2DaoImpl.java
License:Apache License
/** * Adds the security groups to an EC2 instance. * * @param ec2InstanceId, the ec2 instance id. * @param securityGroups, security groups to be added. * @param awsParams, awsParamsDto object * * @return updated security groups./*from ww w .j av a2 s . c o m*/ */ @Override public List<String> addSecurityGroupsToEc2Instance(String ec2InstanceId, List<String> securityGroups, AwsParamsDto awsParams) { Set<String> updatedSecurityGroups = new HashSet<>(); for (String securityGroup : securityGroups) { updatedSecurityGroups.add(securityGroup); } // Get existing security groups DescribeInstanceAttributeRequest describeInstanceAttributeRequest = new DescribeInstanceAttributeRequest() .withInstanceId(ec2InstanceId).withAttribute(InstanceAttributeName.GroupSet); DescribeInstanceAttributeResult describeInstanceAttributeResult = ec2Operations .describeInstanceAttribute(getEc2Client(awsParams), describeInstanceAttributeRequest); List<GroupIdentifier> groups = describeInstanceAttributeResult.getInstanceAttribute().getGroups(); for (GroupIdentifier groupIdentifier : groups) { updatedSecurityGroups.add(groupIdentifier.getGroupId()); } // Add security group on master EC2 instance ModifyInstanceAttributeRequest modifyInstanceAttributeRequest = new ModifyInstanceAttributeRequest() .withInstanceId(ec2InstanceId).withGroups(updatedSecurityGroups); ec2Operations.modifyInstanceAttribute(getEc2Client(awsParams), modifyInstanceAttributeRequest); return new ArrayList<>(updatedSecurityGroups); }