Example usage for com.amazonaws.services.ec2.model DisassociateAddressRequest withPublicIp

List of usage examples for com.amazonaws.services.ec2.model DisassociateAddressRequest withPublicIp

Introduction

In this page you can find the example usage for com.amazonaws.services.ec2.model DisassociateAddressRequest withPublicIp.

Prototype


public DisassociateAddressRequest withPublicIp(String publicIp) 

Source Link

Document

[EC2-Classic] The Elastic IP address.

Usage

From source file:jp.primecloud.auto.process.aws.AwsAddressProcess.java

License:Open Source License

public void disassociateAddress(AwsProcessClient awsProcessClient, Long instanceNo, Long addressNo,
        Address address) {//from   ww  w .ja v a2  s.  c  o m
    AwsAddress awsAddress = awsAddressDao.read(addressNo);

    // ??
    DisassociateAddressRequest request = new DisassociateAddressRequest();

    // VPC??
    if (BooleanUtils.isTrue(awsProcessClient.getPlatformAws().getVpc())) {
        // ?ID?
        request.withAssociationId(address.getAssociationId());
    }
    // ?VPC??
    else {
        request.withPublicIp(awsAddress.getPublicIp());
    }

    awsProcessClient.getEc2Client().disassociateAddress(request);

    // 
    if (log.isInfoEnabled()) {
        log.info(MessageUtils.getMessage("IPROCESS-100132", awsAddress.getPublicIp(),
                awsAddress.getInstanceId()));
    }

    //
    Instance instance = instanceDao.read(instanceNo);
    processLogger.debug(null, instance, "AwsElasticIpDisassociate",
            new Object[] { awsAddress.getInstanceId(), awsAddress.getPublicIp() });

    // ?
    awsAddress.setInstanceId(null);
    awsAddressDao.update(awsAddress);
}