List of usage examples for com.amazonaws.services.ec2.model ModifyInstanceAttributeRequest withInstanceId
public ModifyInstanceAttributeRequest withInstanceId(String instanceId)
The ID of the instance.
From source file:com.urbancode.terraform.tasks.aws.helpers.AWSHelper.java
License:Apache License
public void modifyInstanceAttribute(String instanceId, String attribute, String value, AmazonEC2 ec2Client) { ModifyInstanceAttributeRequest request = new ModifyInstanceAttributeRequest(); if (isNotBlank(instanceId) && isNotBlank(attribute) && isNotBlank(value)) { request.withInstanceId(instanceId); request = request.withAttribute(attribute); request = request.withValue(value); }//w ww .j a v a 2s .c o m ec2Client.modifyInstanceAttribute(request); }
From source file:jp.primecloud.auto.process.aws.AwsInstanceProcess.java
License:Open Source License
public void modify(AwsProcessClient awsProcessClient, Long instanceNo) { AwsInstance awsInstance = awsInstanceDao.read(instanceNo); String instanceId = awsInstance.getInstanceId(); com.amazonaws.services.ec2.model.Instance instance2 = awsCommonProcess.describeInstance(awsProcessClient, instanceId);/* w w w .j av a2s . c om*/ // InstanceType if (!StringUtils.equals(awsInstance.getInstanceType(), instance2.getInstanceType())) { // InstanceType? ModifyInstanceAttributeRequest request = new ModifyInstanceAttributeRequest(); request.withInstanceId(instanceId); request.withInstanceType(awsInstance.getInstanceType()); awsProcessClient.getEc2Client().modifyInstanceAttribute(request); // if (log.isInfoEnabled()) { log.info(MessageUtils.getMessage("IPROCESS-100161", instanceId)); } } // SecurityGroup if (BooleanUtils.isTrue(awsProcessClient.getPlatformAws().getVpc())) { // ????SecurityGroup List<String> groupNames = new ArrayList<String>(); List<GroupIdentifier> groupIdentifiers = instance2.getSecurityGroups(); for (GroupIdentifier groupIdentifier : groupIdentifiers) { groupNames.add(groupIdentifier.getGroupName()); } // ????SecurityGroup List<String> newGroupNames = new ArrayList<String>(); for (String groupName : StringUtils.split(awsInstance.getSecurityGroups(), ",")) { newGroupNames.add(groupName.trim()); } // SecurityGroup??????? if (!(groupNames.size() == newGroupNames.size()) || !groupNames.containsAll(newGroupNames)) { // SecurityGroup?ID?? List<String> newSecurityGroups = new ArrayList<String>(); List<SecurityGroup> securityGroups = awsCommonProcess.describeSecurityGroupsByVpcId( awsProcessClient, awsProcessClient.getPlatformAws().getVpcId()); for (String groupName : newGroupNames) { for (SecurityGroup securityGroup : securityGroups) { if (StringUtils.equals(groupName, securityGroup.getGroupName())) { newSecurityGroups.add(securityGroup.getGroupId()); break; } } } // SecurityGroup? ModifyInstanceAttributeRequest request = new ModifyInstanceAttributeRequest(); request.withInstanceId(instanceId); request.withGroups(newSecurityGroups); awsProcessClient.getEc2Client().modifyInstanceAttribute(request); // if (log.isInfoEnabled()) { log.info(MessageUtils.getMessage("IPROCESS-100162", instanceId)); } } } }