/* * Copyright 2018-2023 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; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* A Recovery Instance is a replica of a Source Server running on EC2. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class RecoveryInstance implements Serializable, Cloneable, StructuredPojo { /** ** The ARN of the Recovery Instance. *
*/ private String arn; /** ** The Data Replication Info of the Recovery Instance. *
*/ private RecoveryInstanceDataReplicationInfo dataReplicationInfo; /** ** The EC2 instance ID of the Recovery Instance. *
*/ private String ec2InstanceID; /** ** The state of the EC2 instance for this Recovery Instance. *
*/ private String ec2InstanceState; /** ** An object representing failback related information of the Recovery Instance. *
*/ private RecoveryInstanceFailback failback; /** ** Whether this Recovery Instance was created for a drill or for an actual Recovery event. *
*/ private Boolean isDrill; /** ** The ID of the Job that created the Recovery Instance. *
*/ private String jobID; /** ** AWS availability zone associated with the recovery instance. *
*/ private String originAvailabilityZone; /** ** Environment (On Premises / AWS) of the instance that the recovery instance originated from. *
*/ private String originEnvironment; /** ** The date and time of the Point in Time (PIT) snapshot that this Recovery Instance was launched from. *
*/ private String pointInTimeSnapshotDateTime; /** ** The ID of the Recovery Instance. *
*/ private String recoveryInstanceID; /** ** Properties of the Recovery Instance machine. *
*/ private RecoveryInstanceProperties recoveryInstanceProperties; /** ** The Source Server ID that this Recovery Instance is associated with. *
*/ private String sourceServerID; /** ** An array of tags that are associated with the Recovery Instance. *
*/ private java.util.Map* The ARN of the Recovery Instance. *
* * @param arn * The ARN of the Recovery Instance. */ public void setArn(String arn) { this.arn = arn; } /** ** The ARN of the Recovery Instance. *
* * @return The ARN of the Recovery Instance. */ public String getArn() { return this.arn; } /** ** The ARN of the Recovery Instance. *
* * @param arn * The ARN of the Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withArn(String arn) { setArn(arn); return this; } /** ** The Data Replication Info of the Recovery Instance. *
* * @param dataReplicationInfo * The Data Replication Info of the Recovery Instance. */ public void setDataReplicationInfo(RecoveryInstanceDataReplicationInfo dataReplicationInfo) { this.dataReplicationInfo = dataReplicationInfo; } /** ** The Data Replication Info of the Recovery Instance. *
* * @return The Data Replication Info of the Recovery Instance. */ public RecoveryInstanceDataReplicationInfo getDataReplicationInfo() { return this.dataReplicationInfo; } /** ** The Data Replication Info of the Recovery Instance. *
* * @param dataReplicationInfo * The Data Replication Info of the Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withDataReplicationInfo(RecoveryInstanceDataReplicationInfo dataReplicationInfo) { setDataReplicationInfo(dataReplicationInfo); return this; } /** ** The EC2 instance ID of the Recovery Instance. *
* * @param ec2InstanceID * The EC2 instance ID of the Recovery Instance. */ public void setEc2InstanceID(String ec2InstanceID) { this.ec2InstanceID = ec2InstanceID; } /** ** The EC2 instance ID of the Recovery Instance. *
* * @return The EC2 instance ID of the Recovery Instance. */ public String getEc2InstanceID() { return this.ec2InstanceID; } /** ** The EC2 instance ID of the Recovery Instance. *
* * @param ec2InstanceID * The EC2 instance ID of the Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withEc2InstanceID(String ec2InstanceID) { setEc2InstanceID(ec2InstanceID); return this; } /** ** The state of the EC2 instance for this Recovery Instance. *
* * @param ec2InstanceState * The state of the EC2 instance for this Recovery Instance. * @see EC2InstanceState */ public void setEc2InstanceState(String ec2InstanceState) { this.ec2InstanceState = ec2InstanceState; } /** ** The state of the EC2 instance for this Recovery Instance. *
* * @return The state of the EC2 instance for this Recovery Instance. * @see EC2InstanceState */ public String getEc2InstanceState() { return this.ec2InstanceState; } /** ** The state of the EC2 instance for this Recovery Instance. *
* * @param ec2InstanceState * The state of the EC2 instance for this Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. * @see EC2InstanceState */ public RecoveryInstance withEc2InstanceState(String ec2InstanceState) { setEc2InstanceState(ec2InstanceState); return this; } /** ** The state of the EC2 instance for this Recovery Instance. *
* * @param ec2InstanceState * The state of the EC2 instance for this Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. * @see EC2InstanceState */ public RecoveryInstance withEc2InstanceState(EC2InstanceState ec2InstanceState) { this.ec2InstanceState = ec2InstanceState.toString(); return this; } /** ** An object representing failback related information of the Recovery Instance. *
* * @param failback * An object representing failback related information of the Recovery Instance. */ public void setFailback(RecoveryInstanceFailback failback) { this.failback = failback; } /** ** An object representing failback related information of the Recovery Instance. *
* * @return An object representing failback related information of the Recovery Instance. */ public RecoveryInstanceFailback getFailback() { return this.failback; } /** ** An object representing failback related information of the Recovery Instance. *
* * @param failback * An object representing failback related information of the Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withFailback(RecoveryInstanceFailback failback) { setFailback(failback); return this; } /** ** Whether this Recovery Instance was created for a drill or for an actual Recovery event. *
* * @param isDrill * Whether this Recovery Instance was created for a drill or for an actual Recovery event. */ public void setIsDrill(Boolean isDrill) { this.isDrill = isDrill; } /** ** Whether this Recovery Instance was created for a drill or for an actual Recovery event. *
* * @return Whether this Recovery Instance was created for a drill or for an actual Recovery event. */ public Boolean getIsDrill() { return this.isDrill; } /** ** Whether this Recovery Instance was created for a drill or for an actual Recovery event. *
* * @param isDrill * Whether this Recovery Instance was created for a drill or for an actual Recovery event. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withIsDrill(Boolean isDrill) { setIsDrill(isDrill); return this; } /** ** Whether this Recovery Instance was created for a drill or for an actual Recovery event. *
* * @return Whether this Recovery Instance was created for a drill or for an actual Recovery event. */ public Boolean isDrill() { return this.isDrill; } /** ** The ID of the Job that created the Recovery Instance. *
* * @param jobID * The ID of the Job that created the Recovery Instance. */ public void setJobID(String jobID) { this.jobID = jobID; } /** ** The ID of the Job that created the Recovery Instance. *
* * @return The ID of the Job that created the Recovery Instance. */ public String getJobID() { return this.jobID; } /** ** The ID of the Job that created the Recovery Instance. *
* * @param jobID * The ID of the Job that created the Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withJobID(String jobID) { setJobID(jobID); return this; } /** ** AWS availability zone associated with the recovery instance. *
* * @param originAvailabilityZone * AWS availability zone associated with the recovery instance. */ public void setOriginAvailabilityZone(String originAvailabilityZone) { this.originAvailabilityZone = originAvailabilityZone; } /** ** AWS availability zone associated with the recovery instance. *
* * @return AWS availability zone associated with the recovery instance. */ public String getOriginAvailabilityZone() { return this.originAvailabilityZone; } /** ** AWS availability zone associated with the recovery instance. *
* * @param originAvailabilityZone * AWS availability zone associated with the recovery instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withOriginAvailabilityZone(String originAvailabilityZone) { setOriginAvailabilityZone(originAvailabilityZone); return this; } /** ** Environment (On Premises / AWS) of the instance that the recovery instance originated from. *
* * @param originEnvironment * Environment (On Premises / AWS) of the instance that the recovery instance originated from. * @see OriginEnvironment */ public void setOriginEnvironment(String originEnvironment) { this.originEnvironment = originEnvironment; } /** ** Environment (On Premises / AWS) of the instance that the recovery instance originated from. *
* * @return Environment (On Premises / AWS) of the instance that the recovery instance originated from. * @see OriginEnvironment */ public String getOriginEnvironment() { return this.originEnvironment; } /** ** Environment (On Premises / AWS) of the instance that the recovery instance originated from. *
* * @param originEnvironment * Environment (On Premises / AWS) of the instance that the recovery instance originated from. * @return Returns a reference to this object so that method calls can be chained together. * @see OriginEnvironment */ public RecoveryInstance withOriginEnvironment(String originEnvironment) { setOriginEnvironment(originEnvironment); return this; } /** ** Environment (On Premises / AWS) of the instance that the recovery instance originated from. *
* * @param originEnvironment * Environment (On Premises / AWS) of the instance that the recovery instance originated from. * @return Returns a reference to this object so that method calls can be chained together. * @see OriginEnvironment */ public RecoveryInstance withOriginEnvironment(OriginEnvironment originEnvironment) { this.originEnvironment = originEnvironment.toString(); return this; } /** ** The date and time of the Point in Time (PIT) snapshot that this Recovery Instance was launched from. *
* * @param pointInTimeSnapshotDateTime * The date and time of the Point in Time (PIT) snapshot that this Recovery Instance was launched from. */ public void setPointInTimeSnapshotDateTime(String pointInTimeSnapshotDateTime) { this.pointInTimeSnapshotDateTime = pointInTimeSnapshotDateTime; } /** ** The date and time of the Point in Time (PIT) snapshot that this Recovery Instance was launched from. *
* * @return The date and time of the Point in Time (PIT) snapshot that this Recovery Instance was launched from. */ public String getPointInTimeSnapshotDateTime() { return this.pointInTimeSnapshotDateTime; } /** ** The date and time of the Point in Time (PIT) snapshot that this Recovery Instance was launched from. *
* * @param pointInTimeSnapshotDateTime * The date and time of the Point in Time (PIT) snapshot that this Recovery Instance was launched from. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withPointInTimeSnapshotDateTime(String pointInTimeSnapshotDateTime) { setPointInTimeSnapshotDateTime(pointInTimeSnapshotDateTime); return this; } /** ** The ID of the Recovery Instance. *
* * @param recoveryInstanceID * The ID of the Recovery Instance. */ public void setRecoveryInstanceID(String recoveryInstanceID) { this.recoveryInstanceID = recoveryInstanceID; } /** ** The ID of the Recovery Instance. *
* * @return The ID of the Recovery Instance. */ public String getRecoveryInstanceID() { return this.recoveryInstanceID; } /** ** The ID of the Recovery Instance. *
* * @param recoveryInstanceID * The ID of the Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withRecoveryInstanceID(String recoveryInstanceID) { setRecoveryInstanceID(recoveryInstanceID); return this; } /** ** Properties of the Recovery Instance machine. *
* * @param recoveryInstanceProperties * Properties of the Recovery Instance machine. */ public void setRecoveryInstanceProperties(RecoveryInstanceProperties recoveryInstanceProperties) { this.recoveryInstanceProperties = recoveryInstanceProperties; } /** ** Properties of the Recovery Instance machine. *
* * @return Properties of the Recovery Instance machine. */ public RecoveryInstanceProperties getRecoveryInstanceProperties() { return this.recoveryInstanceProperties; } /** ** Properties of the Recovery Instance machine. *
* * @param recoveryInstanceProperties * Properties of the Recovery Instance machine. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withRecoveryInstanceProperties(RecoveryInstanceProperties recoveryInstanceProperties) { setRecoveryInstanceProperties(recoveryInstanceProperties); return this; } /** ** The Source Server ID that this Recovery Instance is associated with. *
* * @param sourceServerID * The Source Server ID that this Recovery Instance is associated with. */ public void setSourceServerID(String sourceServerID) { this.sourceServerID = sourceServerID; } /** ** The Source Server ID that this Recovery Instance is associated with. *
* * @return The Source Server ID that this Recovery Instance is associated with. */ public String getSourceServerID() { return this.sourceServerID; } /** ** The Source Server ID that this Recovery Instance is associated with. *
* * @param sourceServerID * The Source Server ID that this Recovery Instance is associated with. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withSourceServerID(String sourceServerID) { setSourceServerID(sourceServerID); return this; } /** ** An array of tags that are associated with the Recovery Instance. *
* * @return An array of tags that are associated with the Recovery Instance. */ public java.util.Map* An array of tags that are associated with the Recovery Instance. *
* * @param tags * An array of tags that are associated with the Recovery Instance. */ public void setTags(java.util.Map* An array of tags that are associated with the Recovery Instance. *
* * @param tags * An array of tags that are associated with the Recovery Instance. * @return Returns a reference to this object so that method calls can be chained together. */ public RecoveryInstance withTags(java.util.Map