Example usage for com.amazonaws.services.ec2.model DetachVolumeRequest withInstanceId

List of usage examples for com.amazonaws.services.ec2.model DetachVolumeRequest withInstanceId

Introduction

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

Prototype


public DetachVolumeRequest withInstanceId(String instanceId) 

Source Link

Document

The ID of the instance.

Usage

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

License:Open Source License

public void detachVolume(AwsProcessClient awsProcessClient, Long instanceNo, Long volumeNo) {
    AwsVolume awsVolume = awsVolumeDao.read(volumeNo);
    String volumeId = awsVolume.getVolumeId();

    ////  ww w.ja v a  2 s.  c o  m
    Component component = null;
    if (awsVolume.getComponentNo() != null) {
        component = componentDao.read(awsVolume.getComponentNo());
    }
    Instance instance = instanceDao.read(instanceNo);
    processLogger.debug(component, instance, "AwsEbsDetach",
            new Object[] { instance.getInstanceName(), awsVolume.getVolumeId(), awsVolume.getDevice() });

    // ??
    DetachVolumeRequest request = new DetachVolumeRequest();
    request.withVolumeId(volumeId);
    request.withInstanceId(awsVolume.getInstanceId());
    request.withDevice(awsVolume.getDevice());
    DetachVolumeResult result = awsProcessClient.getEc2Client().detachVolume(request);
    VolumeAttachment attachment = result.getAttachment();

    // 
    if (log.isInfoEnabled()) {
        log.info(MessageUtils.getMessage("IPROCESS-100125", volumeId, attachment.getInstanceId()));
    }
}