com.amazonaws.services.drs.model.GetReplicationConfigurationResult Maven / Gradle / Ivy
Show all versions of aws-java-sdk-drs Show documentation
/*
* 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;
/**
*
* @see AWS
* API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class GetReplicationConfigurationResult extends com.amazonaws.AmazonWebServiceResult implements Serializable, Cloneable {
/**
*
* Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.
*
*/
private Boolean associateDefaultSecurityGroup;
/**
*
* Whether to allow the AWS replication agent to automatically replicate newly added disks.
*
*/
private Boolean autoReplicateNewDisks;
/**
*
* Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.
*
*/
private Long bandwidthThrottling;
/**
*
* Whether to create a Public IP for the Recovery Instance by default.
*
*/
private Boolean createPublicIP;
/**
*
* The data plane routing mechanism that will be used for replication.
*
*/
private String dataPlaneRouting;
/**
*
* The Staging Disk EBS volume type to be used during replication.
*
*/
private String defaultLargeStagingDiskType;
/**
*
* The type of EBS encryption to be used during replication.
*
*/
private String ebsEncryption;
/**
*
* The ARN of the EBS encryption key to be used during replication.
*
*/
private String ebsEncryptionKeyArn;
/**
*
* The name of the Replication Configuration.
*
*/
private String name;
/**
*
* The Point in time (PIT) policy to manage snapshots taken during replication.
*
*/
private java.util.List pitPolicy;
/**
*
* The configuration of the disks of the Source Server to be replicated.
*
*/
private java.util.List replicatedDisks;
/**
*
* The instance type to be used for the replication server.
*
*/
private String replicationServerInstanceType;
/**
*
* The security group IDs that will be used by the replication server.
*
*/
private java.util.List replicationServersSecurityGroupsIDs;
/**
*
* The ID of the Source Server for this Replication Configuration.
*
*/
private String sourceServerID;
/**
*
* The subnet to be used by the replication staging area.
*
*/
private String stagingAreaSubnetId;
/**
*
* A set of tags to be associated with all resources created in the replication staging area: EC2 replication
* server, EBS volumes, EBS snapshots, etc.
*
*/
private java.util.Map stagingAreaTags;
/**
*
* Whether to use a dedicated Replication Server in the replication staging area.
*
*/
private Boolean useDedicatedReplicationServer;
/**
*
* Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.
*
*
* @param associateDefaultSecurityGroup
* Whether to associate the default Elastic Disaster Recovery Security group with the Replication
* Configuration.
*/
public void setAssociateDefaultSecurityGroup(Boolean associateDefaultSecurityGroup) {
this.associateDefaultSecurityGroup = associateDefaultSecurityGroup;
}
/**
*
* Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.
*
*
* @return Whether to associate the default Elastic Disaster Recovery Security group with the Replication
* Configuration.
*/
public Boolean getAssociateDefaultSecurityGroup() {
return this.associateDefaultSecurityGroup;
}
/**
*
* Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.
*
*
* @param associateDefaultSecurityGroup
* Whether to associate the default Elastic Disaster Recovery Security group with the Replication
* Configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withAssociateDefaultSecurityGroup(Boolean associateDefaultSecurityGroup) {
setAssociateDefaultSecurityGroup(associateDefaultSecurityGroup);
return this;
}
/**
*
* Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.
*
*
* @return Whether to associate the default Elastic Disaster Recovery Security group with the Replication
* Configuration.
*/
public Boolean isAssociateDefaultSecurityGroup() {
return this.associateDefaultSecurityGroup;
}
/**
*
* Whether to allow the AWS replication agent to automatically replicate newly added disks.
*
*
* @param autoReplicateNewDisks
* Whether to allow the AWS replication agent to automatically replicate newly added disks.
*/
public void setAutoReplicateNewDisks(Boolean autoReplicateNewDisks) {
this.autoReplicateNewDisks = autoReplicateNewDisks;
}
/**
*
* Whether to allow the AWS replication agent to automatically replicate newly added disks.
*
*
* @return Whether to allow the AWS replication agent to automatically replicate newly added disks.
*/
public Boolean getAutoReplicateNewDisks() {
return this.autoReplicateNewDisks;
}
/**
*
* Whether to allow the AWS replication agent to automatically replicate newly added disks.
*
*
* @param autoReplicateNewDisks
* Whether to allow the AWS replication agent to automatically replicate newly added disks.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withAutoReplicateNewDisks(Boolean autoReplicateNewDisks) {
setAutoReplicateNewDisks(autoReplicateNewDisks);
return this;
}
/**
*
* Whether to allow the AWS replication agent to automatically replicate newly added disks.
*
*
* @return Whether to allow the AWS replication agent to automatically replicate newly added disks.
*/
public Boolean isAutoReplicateNewDisks() {
return this.autoReplicateNewDisks;
}
/**
*
* Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.
*
*
* @param bandwidthThrottling
* Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.
*/
public void setBandwidthThrottling(Long bandwidthThrottling) {
this.bandwidthThrottling = bandwidthThrottling;
}
/**
*
* Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.
*
*
* @return Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.
*/
public Long getBandwidthThrottling() {
return this.bandwidthThrottling;
}
/**
*
* Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.
*
*
* @param bandwidthThrottling
* Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withBandwidthThrottling(Long bandwidthThrottling) {
setBandwidthThrottling(bandwidthThrottling);
return this;
}
/**
*
* Whether to create a Public IP for the Recovery Instance by default.
*
*
* @param createPublicIP
* Whether to create a Public IP for the Recovery Instance by default.
*/
public void setCreatePublicIP(Boolean createPublicIP) {
this.createPublicIP = createPublicIP;
}
/**
*
* Whether to create a Public IP for the Recovery Instance by default.
*
*
* @return Whether to create a Public IP for the Recovery Instance by default.
*/
public Boolean getCreatePublicIP() {
return this.createPublicIP;
}
/**
*
* Whether to create a Public IP for the Recovery Instance by default.
*
*
* @param createPublicIP
* Whether to create a Public IP for the Recovery Instance by default.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withCreatePublicIP(Boolean createPublicIP) {
setCreatePublicIP(createPublicIP);
return this;
}
/**
*
* Whether to create a Public IP for the Recovery Instance by default.
*
*
* @return Whether to create a Public IP for the Recovery Instance by default.
*/
public Boolean isCreatePublicIP() {
return this.createPublicIP;
}
/**
*
* The data plane routing mechanism that will be used for replication.
*
*
* @param dataPlaneRouting
* The data plane routing mechanism that will be used for replication.
* @see ReplicationConfigurationDataPlaneRouting
*/
public void setDataPlaneRouting(String dataPlaneRouting) {
this.dataPlaneRouting = dataPlaneRouting;
}
/**
*
* The data plane routing mechanism that will be used for replication.
*
*
* @return The data plane routing mechanism that will be used for replication.
* @see ReplicationConfigurationDataPlaneRouting
*/
public String getDataPlaneRouting() {
return this.dataPlaneRouting;
}
/**
*
* The data plane routing mechanism that will be used for replication.
*
*
* @param dataPlaneRouting
* The data plane routing mechanism that will be used for replication.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ReplicationConfigurationDataPlaneRouting
*/
public GetReplicationConfigurationResult withDataPlaneRouting(String dataPlaneRouting) {
setDataPlaneRouting(dataPlaneRouting);
return this;
}
/**
*
* The data plane routing mechanism that will be used for replication.
*
*
* @param dataPlaneRouting
* The data plane routing mechanism that will be used for replication.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ReplicationConfigurationDataPlaneRouting
*/
public GetReplicationConfigurationResult withDataPlaneRouting(ReplicationConfigurationDataPlaneRouting dataPlaneRouting) {
this.dataPlaneRouting = dataPlaneRouting.toString();
return this;
}
/**
*
* The Staging Disk EBS volume type to be used during replication.
*
*
* @param defaultLargeStagingDiskType
* The Staging Disk EBS volume type to be used during replication.
* @see ReplicationConfigurationDefaultLargeStagingDiskType
*/
public void setDefaultLargeStagingDiskType(String defaultLargeStagingDiskType) {
this.defaultLargeStagingDiskType = defaultLargeStagingDiskType;
}
/**
*
* The Staging Disk EBS volume type to be used during replication.
*
*
* @return The Staging Disk EBS volume type to be used during replication.
* @see ReplicationConfigurationDefaultLargeStagingDiskType
*/
public String getDefaultLargeStagingDiskType() {
return this.defaultLargeStagingDiskType;
}
/**
*
* The Staging Disk EBS volume type to be used during replication.
*
*
* @param defaultLargeStagingDiskType
* The Staging Disk EBS volume type to be used during replication.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ReplicationConfigurationDefaultLargeStagingDiskType
*/
public GetReplicationConfigurationResult withDefaultLargeStagingDiskType(String defaultLargeStagingDiskType) {
setDefaultLargeStagingDiskType(defaultLargeStagingDiskType);
return this;
}
/**
*
* The Staging Disk EBS volume type to be used during replication.
*
*
* @param defaultLargeStagingDiskType
* The Staging Disk EBS volume type to be used during replication.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ReplicationConfigurationDefaultLargeStagingDiskType
*/
public GetReplicationConfigurationResult withDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType defaultLargeStagingDiskType) {
this.defaultLargeStagingDiskType = defaultLargeStagingDiskType.toString();
return this;
}
/**
*
* The type of EBS encryption to be used during replication.
*
*
* @param ebsEncryption
* The type of EBS encryption to be used during replication.
* @see ReplicationConfigurationEbsEncryption
*/
public void setEbsEncryption(String ebsEncryption) {
this.ebsEncryption = ebsEncryption;
}
/**
*
* The type of EBS encryption to be used during replication.
*
*
* @return The type of EBS encryption to be used during replication.
* @see ReplicationConfigurationEbsEncryption
*/
public String getEbsEncryption() {
return this.ebsEncryption;
}
/**
*
* The type of EBS encryption to be used during replication.
*
*
* @param ebsEncryption
* The type of EBS encryption to be used during replication.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ReplicationConfigurationEbsEncryption
*/
public GetReplicationConfigurationResult withEbsEncryption(String ebsEncryption) {
setEbsEncryption(ebsEncryption);
return this;
}
/**
*
* The type of EBS encryption to be used during replication.
*
*
* @param ebsEncryption
* The type of EBS encryption to be used during replication.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ReplicationConfigurationEbsEncryption
*/
public GetReplicationConfigurationResult withEbsEncryption(ReplicationConfigurationEbsEncryption ebsEncryption) {
this.ebsEncryption = ebsEncryption.toString();
return this;
}
/**
*
* The ARN of the EBS encryption key to be used during replication.
*
*
* @param ebsEncryptionKeyArn
* The ARN of the EBS encryption key to be used during replication.
*/
public void setEbsEncryptionKeyArn(String ebsEncryptionKeyArn) {
this.ebsEncryptionKeyArn = ebsEncryptionKeyArn;
}
/**
*
* The ARN of the EBS encryption key to be used during replication.
*
*
* @return The ARN of the EBS encryption key to be used during replication.
*/
public String getEbsEncryptionKeyArn() {
return this.ebsEncryptionKeyArn;
}
/**
*
* The ARN of the EBS encryption key to be used during replication.
*
*
* @param ebsEncryptionKeyArn
* The ARN of the EBS encryption key to be used during replication.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withEbsEncryptionKeyArn(String ebsEncryptionKeyArn) {
setEbsEncryptionKeyArn(ebsEncryptionKeyArn);
return this;
}
/**
*
* The name of the Replication Configuration.
*
*
* @param name
* The name of the Replication Configuration.
*/
public void setName(String name) {
this.name = name;
}
/**
*
* The name of the Replication Configuration.
*
*
* @return The name of the Replication Configuration.
*/
public String getName() {
return this.name;
}
/**
*
* The name of the Replication Configuration.
*
*
* @param name
* The name of the Replication Configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withName(String name) {
setName(name);
return this;
}
/**
*
* The Point in time (PIT) policy to manage snapshots taken during replication.
*
*
* @return The Point in time (PIT) policy to manage snapshots taken during replication.
*/
public java.util.List getPitPolicy() {
return pitPolicy;
}
/**
*
* The Point in time (PIT) policy to manage snapshots taken during replication.
*
*
* @param pitPolicy
* The Point in time (PIT) policy to manage snapshots taken during replication.
*/
public void setPitPolicy(java.util.Collection pitPolicy) {
if (pitPolicy == null) {
this.pitPolicy = null;
return;
}
this.pitPolicy = new java.util.ArrayList(pitPolicy);
}
/**
*
* The Point in time (PIT) policy to manage snapshots taken during replication.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setPitPolicy(java.util.Collection)} or {@link #withPitPolicy(java.util.Collection)} if you want to
* override the existing values.
*
*
* @param pitPolicy
* The Point in time (PIT) policy to manage snapshots taken during replication.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withPitPolicy(PITPolicyRule... pitPolicy) {
if (this.pitPolicy == null) {
setPitPolicy(new java.util.ArrayList(pitPolicy.length));
}
for (PITPolicyRule ele : pitPolicy) {
this.pitPolicy.add(ele);
}
return this;
}
/**
*
* The Point in time (PIT) policy to manage snapshots taken during replication.
*
*
* @param pitPolicy
* The Point in time (PIT) policy to manage snapshots taken during replication.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withPitPolicy(java.util.Collection pitPolicy) {
setPitPolicy(pitPolicy);
return this;
}
/**
*
* The configuration of the disks of the Source Server to be replicated.
*
*
* @return The configuration of the disks of the Source Server to be replicated.
*/
public java.util.List getReplicatedDisks() {
return replicatedDisks;
}
/**
*
* The configuration of the disks of the Source Server to be replicated.
*
*
* @param replicatedDisks
* The configuration of the disks of the Source Server to be replicated.
*/
public void setReplicatedDisks(java.util.Collection replicatedDisks) {
if (replicatedDisks == null) {
this.replicatedDisks = null;
return;
}
this.replicatedDisks = new java.util.ArrayList(replicatedDisks);
}
/**
*
* The configuration of the disks of the Source Server to be replicated.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setReplicatedDisks(java.util.Collection)} or {@link #withReplicatedDisks(java.util.Collection)} if you
* want to override the existing values.
*
*
* @param replicatedDisks
* The configuration of the disks of the Source Server to be replicated.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withReplicatedDisks(ReplicationConfigurationReplicatedDisk... replicatedDisks) {
if (this.replicatedDisks == null) {
setReplicatedDisks(new java.util.ArrayList(replicatedDisks.length));
}
for (ReplicationConfigurationReplicatedDisk ele : replicatedDisks) {
this.replicatedDisks.add(ele);
}
return this;
}
/**
*
* The configuration of the disks of the Source Server to be replicated.
*
*
* @param replicatedDisks
* The configuration of the disks of the Source Server to be replicated.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withReplicatedDisks(java.util.Collection replicatedDisks) {
setReplicatedDisks(replicatedDisks);
return this;
}
/**
*
* The instance type to be used for the replication server.
*
*
* @param replicationServerInstanceType
* The instance type to be used for the replication server.
*/
public void setReplicationServerInstanceType(String replicationServerInstanceType) {
this.replicationServerInstanceType = replicationServerInstanceType;
}
/**
*
* The instance type to be used for the replication server.
*
*
* @return The instance type to be used for the replication server.
*/
public String getReplicationServerInstanceType() {
return this.replicationServerInstanceType;
}
/**
*
* The instance type to be used for the replication server.
*
*
* @param replicationServerInstanceType
* The instance type to be used for the replication server.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withReplicationServerInstanceType(String replicationServerInstanceType) {
setReplicationServerInstanceType(replicationServerInstanceType);
return this;
}
/**
*
* The security group IDs that will be used by the replication server.
*
*
* @return The security group IDs that will be used by the replication server.
*/
public java.util.List getReplicationServersSecurityGroupsIDs() {
return replicationServersSecurityGroupsIDs;
}
/**
*
* The security group IDs that will be used by the replication server.
*
*
* @param replicationServersSecurityGroupsIDs
* The security group IDs that will be used by the replication server.
*/
public void setReplicationServersSecurityGroupsIDs(java.util.Collection replicationServersSecurityGroupsIDs) {
if (replicationServersSecurityGroupsIDs == null) {
this.replicationServersSecurityGroupsIDs = null;
return;
}
this.replicationServersSecurityGroupsIDs = new java.util.ArrayList(replicationServersSecurityGroupsIDs);
}
/**
*
* The security group IDs that will be used by the replication server.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setReplicationServersSecurityGroupsIDs(java.util.Collection)} or
* {@link #withReplicationServersSecurityGroupsIDs(java.util.Collection)} if you want to override the existing
* values.
*
*
* @param replicationServersSecurityGroupsIDs
* The security group IDs that will be used by the replication server.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withReplicationServersSecurityGroupsIDs(String... replicationServersSecurityGroupsIDs) {
if (this.replicationServersSecurityGroupsIDs == null) {
setReplicationServersSecurityGroupsIDs(new java.util.ArrayList(replicationServersSecurityGroupsIDs.length));
}
for (String ele : replicationServersSecurityGroupsIDs) {
this.replicationServersSecurityGroupsIDs.add(ele);
}
return this;
}
/**
*
* The security group IDs that will be used by the replication server.
*
*
* @param replicationServersSecurityGroupsIDs
* The security group IDs that will be used by the replication server.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withReplicationServersSecurityGroupsIDs(java.util.Collection replicationServersSecurityGroupsIDs) {
setReplicationServersSecurityGroupsIDs(replicationServersSecurityGroupsIDs);
return this;
}
/**
*
* The ID of the Source Server for this Replication Configuration.
*
*
* @param sourceServerID
* The ID of the Source Server for this Replication Configuration.
*/
public void setSourceServerID(String sourceServerID) {
this.sourceServerID = sourceServerID;
}
/**
*
* The ID of the Source Server for this Replication Configuration.
*
*
* @return The ID of the Source Server for this Replication Configuration.
*/
public String getSourceServerID() {
return this.sourceServerID;
}
/**
*
* The ID of the Source Server for this Replication Configuration.
*
*
* @param sourceServerID
* The ID of the Source Server for this Replication Configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withSourceServerID(String sourceServerID) {
setSourceServerID(sourceServerID);
return this;
}
/**
*
* The subnet to be used by the replication staging area.
*
*
* @param stagingAreaSubnetId
* The subnet to be used by the replication staging area.
*/
public void setStagingAreaSubnetId(String stagingAreaSubnetId) {
this.stagingAreaSubnetId = stagingAreaSubnetId;
}
/**
*
* The subnet to be used by the replication staging area.
*
*
* @return The subnet to be used by the replication staging area.
*/
public String getStagingAreaSubnetId() {
return this.stagingAreaSubnetId;
}
/**
*
* The subnet to be used by the replication staging area.
*
*
* @param stagingAreaSubnetId
* The subnet to be used by the replication staging area.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withStagingAreaSubnetId(String stagingAreaSubnetId) {
setStagingAreaSubnetId(stagingAreaSubnetId);
return this;
}
/**
*
* A set of tags to be associated with all resources created in the replication staging area: EC2 replication
* server, EBS volumes, EBS snapshots, etc.
*
*
* @return A set of tags to be associated with all resources created in the replication staging area: EC2
* replication server, EBS volumes, EBS snapshots, etc.
*/
public java.util.Map getStagingAreaTags() {
return stagingAreaTags;
}
/**
*
* A set of tags to be associated with all resources created in the replication staging area: EC2 replication
* server, EBS volumes, EBS snapshots, etc.
*
*
* @param stagingAreaTags
* A set of tags to be associated with all resources created in the replication staging area: EC2 replication
* server, EBS volumes, EBS snapshots, etc.
*/
public void setStagingAreaTags(java.util.Map stagingAreaTags) {
this.stagingAreaTags = stagingAreaTags;
}
/**
*
* A set of tags to be associated with all resources created in the replication staging area: EC2 replication
* server, EBS volumes, EBS snapshots, etc.
*
*
* @param stagingAreaTags
* A set of tags to be associated with all resources created in the replication staging area: EC2 replication
* server, EBS volumes, EBS snapshots, etc.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withStagingAreaTags(java.util.Map stagingAreaTags) {
setStagingAreaTags(stagingAreaTags);
return this;
}
/**
* Add a single StagingAreaTags entry
*
* @see GetReplicationConfigurationResult#withStagingAreaTags
* @returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult addStagingAreaTagsEntry(String key, String value) {
if (null == this.stagingAreaTags) {
this.stagingAreaTags = new java.util.HashMap();
}
if (this.stagingAreaTags.containsKey(key))
throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided.");
this.stagingAreaTags.put(key, value);
return this;
}
/**
* Removes all the entries added into StagingAreaTags.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult clearStagingAreaTagsEntries() {
this.stagingAreaTags = null;
return this;
}
/**
*
* Whether to use a dedicated Replication Server in the replication staging area.
*
*
* @param useDedicatedReplicationServer
* Whether to use a dedicated Replication Server in the replication staging area.
*/
public void setUseDedicatedReplicationServer(Boolean useDedicatedReplicationServer) {
this.useDedicatedReplicationServer = useDedicatedReplicationServer;
}
/**
*
* Whether to use a dedicated Replication Server in the replication staging area.
*
*
* @return Whether to use a dedicated Replication Server in the replication staging area.
*/
public Boolean getUseDedicatedReplicationServer() {
return this.useDedicatedReplicationServer;
}
/**
*
* Whether to use a dedicated Replication Server in the replication staging area.
*
*
* @param useDedicatedReplicationServer
* Whether to use a dedicated Replication Server in the replication staging area.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetReplicationConfigurationResult withUseDedicatedReplicationServer(Boolean useDedicatedReplicationServer) {
setUseDedicatedReplicationServer(useDedicatedReplicationServer);
return this;
}
/**
*
* Whether to use a dedicated Replication Server in the replication staging area.
*
*
* @return Whether to use a dedicated Replication Server in the replication staging area.
*/
public Boolean isUseDedicatedReplicationServer() {
return this.useDedicatedReplicationServer;
}
/**
* 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 (getAssociateDefaultSecurityGroup() != null)
sb.append("AssociateDefaultSecurityGroup: ").append(getAssociateDefaultSecurityGroup()).append(",");
if (getAutoReplicateNewDisks() != null)
sb.append("AutoReplicateNewDisks: ").append(getAutoReplicateNewDisks()).append(",");
if (getBandwidthThrottling() != null)
sb.append("BandwidthThrottling: ").append(getBandwidthThrottling()).append(",");
if (getCreatePublicIP() != null)
sb.append("CreatePublicIP: ").append(getCreatePublicIP()).append(",");
if (getDataPlaneRouting() != null)
sb.append("DataPlaneRouting: ").append(getDataPlaneRouting()).append(",");
if (getDefaultLargeStagingDiskType() != null)
sb.append("DefaultLargeStagingDiskType: ").append(getDefaultLargeStagingDiskType()).append(",");
if (getEbsEncryption() != null)
sb.append("EbsEncryption: ").append(getEbsEncryption()).append(",");
if (getEbsEncryptionKeyArn() != null)
sb.append("EbsEncryptionKeyArn: ").append(getEbsEncryptionKeyArn()).append(",");
if (getName() != null)
sb.append("Name: ").append(getName()).append(",");
if (getPitPolicy() != null)
sb.append("PitPolicy: ").append(getPitPolicy()).append(",");
if (getReplicatedDisks() != null)
sb.append("ReplicatedDisks: ").append(getReplicatedDisks()).append(",");
if (getReplicationServerInstanceType() != null)
sb.append("ReplicationServerInstanceType: ").append(getReplicationServerInstanceType()).append(",");
if (getReplicationServersSecurityGroupsIDs() != null)
sb.append("ReplicationServersSecurityGroupsIDs: ").append(getReplicationServersSecurityGroupsIDs()).append(",");
if (getSourceServerID() != null)
sb.append("SourceServerID: ").append(getSourceServerID()).append(",");
if (getStagingAreaSubnetId() != null)
sb.append("StagingAreaSubnetId: ").append(getStagingAreaSubnetId()).append(",");
if (getStagingAreaTags() != null)
sb.append("StagingAreaTags: ").append("***Sensitive Data Redacted***").append(",");
if (getUseDedicatedReplicationServer() != null)
sb.append("UseDedicatedReplicationServer: ").append(getUseDedicatedReplicationServer());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof GetReplicationConfigurationResult == false)
return false;
GetReplicationConfigurationResult other = (GetReplicationConfigurationResult) obj;
if (other.getAssociateDefaultSecurityGroup() == null ^ this.getAssociateDefaultSecurityGroup() == null)
return false;
if (other.getAssociateDefaultSecurityGroup() != null
&& other.getAssociateDefaultSecurityGroup().equals(this.getAssociateDefaultSecurityGroup()) == false)
return false;
if (other.getAutoReplicateNewDisks() == null ^ this.getAutoReplicateNewDisks() == null)
return false;
if (other.getAutoReplicateNewDisks() != null && other.getAutoReplicateNewDisks().equals(this.getAutoReplicateNewDisks()) == false)
return false;
if (other.getBandwidthThrottling() == null ^ this.getBandwidthThrottling() == null)
return false;
if (other.getBandwidthThrottling() != null && other.getBandwidthThrottling().equals(this.getBandwidthThrottling()) == false)
return false;
if (other.getCreatePublicIP() == null ^ this.getCreatePublicIP() == null)
return false;
if (other.getCreatePublicIP() != null && other.getCreatePublicIP().equals(this.getCreatePublicIP()) == false)
return false;
if (other.getDataPlaneRouting() == null ^ this.getDataPlaneRouting() == null)
return false;
if (other.getDataPlaneRouting() != null && other.getDataPlaneRouting().equals(this.getDataPlaneRouting()) == false)
return false;
if (other.getDefaultLargeStagingDiskType() == null ^ this.getDefaultLargeStagingDiskType() == null)
return false;
if (other.getDefaultLargeStagingDiskType() != null && other.getDefaultLargeStagingDiskType().equals(this.getDefaultLargeStagingDiskType()) == false)
return false;
if (other.getEbsEncryption() == null ^ this.getEbsEncryption() == null)
return false;
if (other.getEbsEncryption() != null && other.getEbsEncryption().equals(this.getEbsEncryption()) == false)
return false;
if (other.getEbsEncryptionKeyArn() == null ^ this.getEbsEncryptionKeyArn() == null)
return false;
if (other.getEbsEncryptionKeyArn() != null && other.getEbsEncryptionKeyArn().equals(this.getEbsEncryptionKeyArn()) == 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.getPitPolicy() == null ^ this.getPitPolicy() == null)
return false;
if (other.getPitPolicy() != null && other.getPitPolicy().equals(this.getPitPolicy()) == false)
return false;
if (other.getReplicatedDisks() == null ^ this.getReplicatedDisks() == null)
return false;
if (other.getReplicatedDisks() != null && other.getReplicatedDisks().equals(this.getReplicatedDisks()) == false)
return false;
if (other.getReplicationServerInstanceType() == null ^ this.getReplicationServerInstanceType() == null)
return false;
if (other.getReplicationServerInstanceType() != null
&& other.getReplicationServerInstanceType().equals(this.getReplicationServerInstanceType()) == false)
return false;
if (other.getReplicationServersSecurityGroupsIDs() == null ^ this.getReplicationServersSecurityGroupsIDs() == null)
return false;
if (other.getReplicationServersSecurityGroupsIDs() != null
&& other.getReplicationServersSecurityGroupsIDs().equals(this.getReplicationServersSecurityGroupsIDs()) == 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.getStagingAreaSubnetId() == null ^ this.getStagingAreaSubnetId() == null)
return false;
if (other.getStagingAreaSubnetId() != null && other.getStagingAreaSubnetId().equals(this.getStagingAreaSubnetId()) == false)
return false;
if (other.getStagingAreaTags() == null ^ this.getStagingAreaTags() == null)
return false;
if (other.getStagingAreaTags() != null && other.getStagingAreaTags().equals(this.getStagingAreaTags()) == false)
return false;
if (other.getUseDedicatedReplicationServer() == null ^ this.getUseDedicatedReplicationServer() == null)
return false;
if (other.getUseDedicatedReplicationServer() != null
&& other.getUseDedicatedReplicationServer().equals(this.getUseDedicatedReplicationServer()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getAssociateDefaultSecurityGroup() == null) ? 0 : getAssociateDefaultSecurityGroup().hashCode());
hashCode = prime * hashCode + ((getAutoReplicateNewDisks() == null) ? 0 : getAutoReplicateNewDisks().hashCode());
hashCode = prime * hashCode + ((getBandwidthThrottling() == null) ? 0 : getBandwidthThrottling().hashCode());
hashCode = prime * hashCode + ((getCreatePublicIP() == null) ? 0 : getCreatePublicIP().hashCode());
hashCode = prime * hashCode + ((getDataPlaneRouting() == null) ? 0 : getDataPlaneRouting().hashCode());
hashCode = prime * hashCode + ((getDefaultLargeStagingDiskType() == null) ? 0 : getDefaultLargeStagingDiskType().hashCode());
hashCode = prime * hashCode + ((getEbsEncryption() == null) ? 0 : getEbsEncryption().hashCode());
hashCode = prime * hashCode + ((getEbsEncryptionKeyArn() == null) ? 0 : getEbsEncryptionKeyArn().hashCode());
hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode());
hashCode = prime * hashCode + ((getPitPolicy() == null) ? 0 : getPitPolicy().hashCode());
hashCode = prime * hashCode + ((getReplicatedDisks() == null) ? 0 : getReplicatedDisks().hashCode());
hashCode = prime * hashCode + ((getReplicationServerInstanceType() == null) ? 0 : getReplicationServerInstanceType().hashCode());
hashCode = prime * hashCode + ((getReplicationServersSecurityGroupsIDs() == null) ? 0 : getReplicationServersSecurityGroupsIDs().hashCode());
hashCode = prime * hashCode + ((getSourceServerID() == null) ? 0 : getSourceServerID().hashCode());
hashCode = prime * hashCode + ((getStagingAreaSubnetId() == null) ? 0 : getStagingAreaSubnetId().hashCode());
hashCode = prime * hashCode + ((getStagingAreaTags() == null) ? 0 : getStagingAreaTags().hashCode());
hashCode = prime * hashCode + ((getUseDedicatedReplicationServer() == null) ? 0 : getUseDedicatedReplicationServer().hashCode());
return hashCode;
}
@Override
public GetReplicationConfigurationResult clone() {
try {
return (GetReplicationConfigurationResult) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
}