com.amazonaws.services.drs.model.UpdateLaunchConfigurationResult Maven / Gradle / Ivy
Show all versions of aws-java-sdk-drs Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.drs.model;
import java.io.Serializable;
import javax.annotation.Generated;
/**
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class UpdateLaunchConfigurationResult extends com.amazonaws.AmazonWebServiceResult implements Serializable, Cloneable {
/**
*
* Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*
*/
private Boolean copyPrivateIp;
/**
*
* Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*
*/
private Boolean copyTags;
/**
*
* The EC2 launch template ID of this launch configuration.
*
*/
private String ec2LaunchTemplateID;
/**
*
* The state of the Recovery Instance in EC2 after the recovery operation.
*
*/
private String launchDisposition;
/**
*
* Launch into existing instance properties.
*
*/
private LaunchIntoInstanceProperties launchIntoInstanceProperties;
/**
*
* The licensing configuration to be used for this launch configuration.
*
*/
private Licensing licensing;
/**
*
* The name of the launch configuration.
*
*/
private String name;
/**
*
* Whether we want to activate post-launch actions for the Source Server.
*
*/
private Boolean postLaunchEnabled;
/**
*
* The ID of the Source Server for this launch configuration.
*
*/
private String sourceServerID;
/**
*
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches the OS,
* CPU, and RAM of your Source Server.
*
*/
private String targetInstanceTypeRightSizingMethod;
/**
*
* Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*
*
* @param copyPrivateIp
* Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*/
public void setCopyPrivateIp(Boolean copyPrivateIp) {
this.copyPrivateIp = copyPrivateIp;
}
/**
*
* Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*
*
* @return Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*/
public Boolean getCopyPrivateIp() {
return this.copyPrivateIp;
}
/**
*
* Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*
*
* @param copyPrivateIp
* Whether we should copy the Private IP of the Source Server to the Recovery Instance.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withCopyPrivateIp(Boolean copyPrivateIp) {
setCopyPrivateIp(copyPrivateIp);
return this;
}
/**
*
* Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*
*
* @return Whether we should copy the Private IP of the Source Server to the Recovery Instance.
*/
public Boolean isCopyPrivateIp() {
return this.copyPrivateIp;
}
/**
*
* Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*
*
* @param copyTags
* Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*/
public void setCopyTags(Boolean copyTags) {
this.copyTags = copyTags;
}
/**
*
* Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*
*
* @return Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*/
public Boolean getCopyTags() {
return this.copyTags;
}
/**
*
* Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*
*
* @param copyTags
* Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withCopyTags(Boolean copyTags) {
setCopyTags(copyTags);
return this;
}
/**
*
* Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*
*
* @return Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
*/
public Boolean isCopyTags() {
return this.copyTags;
}
/**
*
* The EC2 launch template ID of this launch configuration.
*
*
* @param ec2LaunchTemplateID
* The EC2 launch template ID of this launch configuration.
*/
public void setEc2LaunchTemplateID(String ec2LaunchTemplateID) {
this.ec2LaunchTemplateID = ec2LaunchTemplateID;
}
/**
*
* The EC2 launch template ID of this launch configuration.
*
*
* @return The EC2 launch template ID of this launch configuration.
*/
public String getEc2LaunchTemplateID() {
return this.ec2LaunchTemplateID;
}
/**
*
* The EC2 launch template ID of this launch configuration.
*
*
* @param ec2LaunchTemplateID
* The EC2 launch template ID of this launch configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withEc2LaunchTemplateID(String ec2LaunchTemplateID) {
setEc2LaunchTemplateID(ec2LaunchTemplateID);
return this;
}
/**
*
* The state of the Recovery Instance in EC2 after the recovery operation.
*
*
* @param launchDisposition
* The state of the Recovery Instance in EC2 after the recovery operation.
* @see LaunchDisposition
*/
public void setLaunchDisposition(String launchDisposition) {
this.launchDisposition = launchDisposition;
}
/**
*
* The state of the Recovery Instance in EC2 after the recovery operation.
*
*
* @return The state of the Recovery Instance in EC2 after the recovery operation.
* @see LaunchDisposition
*/
public String getLaunchDisposition() {
return this.launchDisposition;
}
/**
*
* The state of the Recovery Instance in EC2 after the recovery operation.
*
*
* @param launchDisposition
* The state of the Recovery Instance in EC2 after the recovery operation.
* @return Returns a reference to this object so that method calls can be chained together.
* @see LaunchDisposition
*/
public UpdateLaunchConfigurationResult withLaunchDisposition(String launchDisposition) {
setLaunchDisposition(launchDisposition);
return this;
}
/**
*
* The state of the Recovery Instance in EC2 after the recovery operation.
*
*
* @param launchDisposition
* The state of the Recovery Instance in EC2 after the recovery operation.
* @return Returns a reference to this object so that method calls can be chained together.
* @see LaunchDisposition
*/
public UpdateLaunchConfigurationResult withLaunchDisposition(LaunchDisposition launchDisposition) {
this.launchDisposition = launchDisposition.toString();
return this;
}
/**
*
* Launch into existing instance properties.
*
*
* @param launchIntoInstanceProperties
* Launch into existing instance properties.
*/
public void setLaunchIntoInstanceProperties(LaunchIntoInstanceProperties launchIntoInstanceProperties) {
this.launchIntoInstanceProperties = launchIntoInstanceProperties;
}
/**
*
* Launch into existing instance properties.
*
*
* @return Launch into existing instance properties.
*/
public LaunchIntoInstanceProperties getLaunchIntoInstanceProperties() {
return this.launchIntoInstanceProperties;
}
/**
*
* Launch into existing instance properties.
*
*
* @param launchIntoInstanceProperties
* Launch into existing instance properties.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withLaunchIntoInstanceProperties(LaunchIntoInstanceProperties launchIntoInstanceProperties) {
setLaunchIntoInstanceProperties(launchIntoInstanceProperties);
return this;
}
/**
*
* The licensing configuration to be used for this launch configuration.
*
*
* @param licensing
* The licensing configuration to be used for this launch configuration.
*/
public void setLicensing(Licensing licensing) {
this.licensing = licensing;
}
/**
*
* The licensing configuration to be used for this launch configuration.
*
*
* @return The licensing configuration to be used for this launch configuration.
*/
public Licensing getLicensing() {
return this.licensing;
}
/**
*
* The licensing configuration to be used for this launch configuration.
*
*
* @param licensing
* The licensing configuration to be used for this launch configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withLicensing(Licensing licensing) {
setLicensing(licensing);
return this;
}
/**
*
* The name of the launch configuration.
*
*
* @param name
* The name of the launch configuration.
*/
public void setName(String name) {
this.name = name;
}
/**
*
* The name of the launch configuration.
*
*
* @return The name of the launch configuration.
*/
public String getName() {
return this.name;
}
/**
*
* The name of the launch configuration.
*
*
* @param name
* The name of the launch configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withName(String name) {
setName(name);
return this;
}
/**
*
* Whether we want to activate post-launch actions for the Source Server.
*
*
* @param postLaunchEnabled
* Whether we want to activate post-launch actions for the Source Server.
*/
public void setPostLaunchEnabled(Boolean postLaunchEnabled) {
this.postLaunchEnabled = postLaunchEnabled;
}
/**
*
* Whether we want to activate post-launch actions for the Source Server.
*
*
* @return Whether we want to activate post-launch actions for the Source Server.
*/
public Boolean getPostLaunchEnabled() {
return this.postLaunchEnabled;
}
/**
*
* Whether we want to activate post-launch actions for the Source Server.
*
*
* @param postLaunchEnabled
* Whether we want to activate post-launch actions for the Source Server.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withPostLaunchEnabled(Boolean postLaunchEnabled) {
setPostLaunchEnabled(postLaunchEnabled);
return this;
}
/**
*
* Whether we want to activate post-launch actions for the Source Server.
*
*
* @return Whether we want to activate post-launch actions for the Source Server.
*/
public Boolean isPostLaunchEnabled() {
return this.postLaunchEnabled;
}
/**
*
* The ID of the Source Server for this launch configuration.
*
*
* @param sourceServerID
* The ID of the Source Server for this launch configuration.
*/
public void setSourceServerID(String sourceServerID) {
this.sourceServerID = sourceServerID;
}
/**
*
* The ID of the Source Server for this launch configuration.
*
*
* @return The ID of the Source Server for this launch configuration.
*/
public String getSourceServerID() {
return this.sourceServerID;
}
/**
*
* The ID of the Source Server for this launch configuration.
*
*
* @param sourceServerID
* The ID of the Source Server for this launch configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateLaunchConfigurationResult withSourceServerID(String sourceServerID) {
setSourceServerID(sourceServerID);
return this;
}
/**
*
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches the OS,
* CPU, and RAM of your Source Server.
*
*
* @param targetInstanceTypeRightSizingMethod
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches
* the OS, CPU, and RAM of your Source Server.
* @see TargetInstanceTypeRightSizingMethod
*/
public void setTargetInstanceTypeRightSizingMethod(String targetInstanceTypeRightSizingMethod) {
this.targetInstanceTypeRightSizingMethod = targetInstanceTypeRightSizingMethod;
}
/**
*
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches the OS,
* CPU, and RAM of your Source Server.
*
*
* @return Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches
* the OS, CPU, and RAM of your Source Server.
* @see TargetInstanceTypeRightSizingMethod
*/
public String getTargetInstanceTypeRightSizingMethod() {
return this.targetInstanceTypeRightSizingMethod;
}
/**
*
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches the OS,
* CPU, and RAM of your Source Server.
*
*
* @param targetInstanceTypeRightSizingMethod
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches
* the OS, CPU, and RAM of your Source Server.
* @return Returns a reference to this object so that method calls can be chained together.
* @see TargetInstanceTypeRightSizingMethod
*/
public UpdateLaunchConfigurationResult withTargetInstanceTypeRightSizingMethod(String targetInstanceTypeRightSizingMethod) {
setTargetInstanceTypeRightSizingMethod(targetInstanceTypeRightSizingMethod);
return this;
}
/**
*
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches the OS,
* CPU, and RAM of your Source Server.
*
*
* @param targetInstanceTypeRightSizingMethod
* Whether Elastic Disaster Recovery should try to automatically choose the instance type that best matches
* the OS, CPU, and RAM of your Source Server.
* @return Returns a reference to this object so that method calls can be chained together.
* @see TargetInstanceTypeRightSizingMethod
*/
public UpdateLaunchConfigurationResult withTargetInstanceTypeRightSizingMethod(TargetInstanceTypeRightSizingMethod targetInstanceTypeRightSizingMethod) {
this.targetInstanceTypeRightSizingMethod = targetInstanceTypeRightSizingMethod.toString();
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getCopyPrivateIp() != null)
sb.append("CopyPrivateIp: ").append(getCopyPrivateIp()).append(",");
if (getCopyTags() != null)
sb.append("CopyTags: ").append(getCopyTags()).append(",");
if (getEc2LaunchTemplateID() != null)
sb.append("Ec2LaunchTemplateID: ").append(getEc2LaunchTemplateID()).append(",");
if (getLaunchDisposition() != null)
sb.append("LaunchDisposition: ").append(getLaunchDisposition()).append(",");
if (getLaunchIntoInstanceProperties() != null)
sb.append("LaunchIntoInstanceProperties: ").append(getLaunchIntoInstanceProperties()).append(",");
if (getLicensing() != null)
sb.append("Licensing: ").append(getLicensing()).append(",");
if (getName() != null)
sb.append("Name: ").append(getName()).append(",");
if (getPostLaunchEnabled() != null)
sb.append("PostLaunchEnabled: ").append(getPostLaunchEnabled()).append(",");
if (getSourceServerID() != null)
sb.append("SourceServerID: ").append(getSourceServerID()).append(",");
if (getTargetInstanceTypeRightSizingMethod() != null)
sb.append("TargetInstanceTypeRightSizingMethod: ").append(getTargetInstanceTypeRightSizingMethod());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof UpdateLaunchConfigurationResult == false)
return false;
UpdateLaunchConfigurationResult other = (UpdateLaunchConfigurationResult) obj;
if (other.getCopyPrivateIp() == null ^ this.getCopyPrivateIp() == null)
return false;
if (other.getCopyPrivateIp() != null && other.getCopyPrivateIp().equals(this.getCopyPrivateIp()) == false)
return false;
if (other.getCopyTags() == null ^ this.getCopyTags() == null)
return false;
if (other.getCopyTags() != null && other.getCopyTags().equals(this.getCopyTags()) == false)
return false;
if (other.getEc2LaunchTemplateID() == null ^ this.getEc2LaunchTemplateID() == null)
return false;
if (other.getEc2LaunchTemplateID() != null && other.getEc2LaunchTemplateID().equals(this.getEc2LaunchTemplateID()) == false)
return false;
if (other.getLaunchDisposition() == null ^ this.getLaunchDisposition() == null)
return false;
if (other.getLaunchDisposition() != null && other.getLaunchDisposition().equals(this.getLaunchDisposition()) == false)
return false;
if (other.getLaunchIntoInstanceProperties() == null ^ this.getLaunchIntoInstanceProperties() == null)
return false;
if (other.getLaunchIntoInstanceProperties() != null && other.getLaunchIntoInstanceProperties().equals(this.getLaunchIntoInstanceProperties()) == false)
return false;
if (other.getLicensing() == null ^ this.getLicensing() == null)
return false;
if (other.getLicensing() != null && other.getLicensing().equals(this.getLicensing()) == false)
return false;
if (other.getName() == null ^ this.getName() == null)
return false;
if (other.getName() != null && other.getName().equals(this.getName()) == false)
return false;
if (other.getPostLaunchEnabled() == null ^ this.getPostLaunchEnabled() == null)
return false;
if (other.getPostLaunchEnabled() != null && other.getPostLaunchEnabled().equals(this.getPostLaunchEnabled()) == false)
return false;
if (other.getSourceServerID() == null ^ this.getSourceServerID() == null)
return false;
if (other.getSourceServerID() != null && other.getSourceServerID().equals(this.getSourceServerID()) == false)
return false;
if (other.getTargetInstanceTypeRightSizingMethod() == null ^ this.getTargetInstanceTypeRightSizingMethod() == null)
return false;
if (other.getTargetInstanceTypeRightSizingMethod() != null
&& other.getTargetInstanceTypeRightSizingMethod().equals(this.getTargetInstanceTypeRightSizingMethod()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getCopyPrivateIp() == null) ? 0 : getCopyPrivateIp().hashCode());
hashCode = prime * hashCode + ((getCopyTags() == null) ? 0 : getCopyTags().hashCode());
hashCode = prime * hashCode + ((getEc2LaunchTemplateID() == null) ? 0 : getEc2LaunchTemplateID().hashCode());
hashCode = prime * hashCode + ((getLaunchDisposition() == null) ? 0 : getLaunchDisposition().hashCode());
hashCode = prime * hashCode + ((getLaunchIntoInstanceProperties() == null) ? 0 : getLaunchIntoInstanceProperties().hashCode());
hashCode = prime * hashCode + ((getLicensing() == null) ? 0 : getLicensing().hashCode());
hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode());
hashCode = prime * hashCode + ((getPostLaunchEnabled() == null) ? 0 : getPostLaunchEnabled().hashCode());
hashCode = prime * hashCode + ((getSourceServerID() == null) ? 0 : getSourceServerID().hashCode());
hashCode = prime * hashCode + ((getTargetInstanceTypeRightSizingMethod() == null) ? 0 : getTargetInstanceTypeRightSizingMethod().hashCode());
return hashCode;
}
@Override
public UpdateLaunchConfigurationResult clone() {
try {
return (UpdateLaunchConfigurationResult) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
}