/* * 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.databasemigrationservice.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CreateReplicationInstanceRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** ** The replication instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain 1-63 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Can't end with a hyphen or contain two consecutive hyphens. *
*
* Example: myrepinstance
*
* The amount of storage (in gigabytes) to be initially allocated for the replication instance. *
*/ private Integer allocatedStorage; /** *
* The compute and memory capacity of the replication instance as defined for the specified replication instance
* class. For example to specify the instance class dms.c4.large, set this parameter to "dms.c4.large"
.
*
* For more information on the settings and capacities for the available replication instance classes, see Choosing the right * DMS replication instance; and, Selecting the best size for a replication instance. *
*/ private String replicationInstanceClass; /** ** Specifies the VPC security group to be used with the replication instance. The VPC security group must work with * the VPC containing the replication instance. *
*/ private java.util.List
* The Availability Zone where the replication instance will be created. The default value is a random,
* system-chosen Availability Zone in the endpoint's Amazon Web Services Region, for example:
* us-east-1d
.
*
* A subnet group to associate with the replication instance. *
*/ private String replicationSubnetGroupIdentifier; /** ** The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: A 30-minute window selected at random from an 8-hour block of time per Amazon Web Services Region, * occurring on a random day of the week. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
*/ private String preferredMaintenanceWindow; /** *
* Specifies whether the replication instance is a Multi-AZ deployment. You can't set the
* AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*
* The engine version number of the replication instance. *
** If an engine version number is not specified when a replication instance is created, the default is the latest * engine version available. *
*/ private String engineVersion; /** *
* A value that indicates whether minor engine upgrades are applied automatically to the replication instance during
* the maintenance window. This parameter defaults to true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when you create
* a replication instance. For example, if you set EngineVersion
to a lower version number than the
* current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS uses the
* engine version specified by the EngineVersion
parameter.
*
* One or more tags to be assigned to the replication instance. *
*/ private java.util.List* An KMS key identifier that is used to encrypt the data on the replication instance. *
*
* If you don't specify a value for the KmsKeyId
parameter, then DMS uses your default encryption key.
*
* KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has * a different default encryption key for each Amazon Web Services Region. *
*/ private String kmsKeyId; /** *
* Specifies the accessibility options for the replication instance. A value of true
represents an
* instance with a public IP address. A value of false
represents an instance with a private IP
* address. The default value is true
.
*
* A list of custom DNS name servers supported for the replication instance to access your on-premise source or
* target database. This list overrides the default name servers supported by the replication instance. You can
* specify a comma-separated list of internet addresses for up to four on-premise DNS name servers. For example:
* "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
*
* A friendly name for the resource identifier at the end of the EndpointArn
response parameter that is
* returned in the created Endpoint
object. The value for this parameter can have up to 31 characters.
* It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain two
* consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1
. For example, this
* value might result in the EndpointArn
value
* arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1
. If you don't specify a
* ResourceIdentifier
value, DMS generates a default identifier value for the end of
* EndpointArn
.
*
* The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports * both IPv4 and IPv6 addressing. IPv6 only is not yet supported. *
*/ private String networkType; /** ** The replication instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain 1-63 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Can't end with a hyphen or contain two consecutive hyphens. *
*
* Example: myrepinstance
*
* Constraints: *
** Must contain 1-63 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Can't end with a hyphen or contain two consecutive hyphens. *
*
* Example: myrepinstance
*/
public void setReplicationInstanceIdentifier(String replicationInstanceIdentifier) {
this.replicationInstanceIdentifier = replicationInstanceIdentifier;
}
/**
*
* The replication instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain 1-63 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Can't end with a hyphen or contain two consecutive hyphens. *
*
* Example: myrepinstance
*
* Constraints: *
** Must contain 1-63 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Can't end with a hyphen or contain two consecutive hyphens. *
*
* Example: myrepinstance
*/
public String getReplicationInstanceIdentifier() {
return this.replicationInstanceIdentifier;
}
/**
*
* The replication instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain 1-63 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Can't end with a hyphen or contain two consecutive hyphens. *
*
* Example: myrepinstance
*
* Constraints: *
** Must contain 1-63 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Can't end with a hyphen or contain two consecutive hyphens. *
*
* Example: myrepinstance
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateReplicationInstanceRequest withReplicationInstanceIdentifier(String replicationInstanceIdentifier) {
setReplicationInstanceIdentifier(replicationInstanceIdentifier);
return this;
}
/**
*
* The amount of storage (in gigabytes) to be initially allocated for the replication instance. *
* * @param allocatedStorage * The amount of storage (in gigabytes) to be initially allocated for the replication instance. */ public void setAllocatedStorage(Integer allocatedStorage) { this.allocatedStorage = allocatedStorage; } /** ** The amount of storage (in gigabytes) to be initially allocated for the replication instance. *
* * @return The amount of storage (in gigabytes) to be initially allocated for the replication instance. */ public Integer getAllocatedStorage() { return this.allocatedStorage; } /** ** The amount of storage (in gigabytes) to be initially allocated for the replication instance. *
* * @param allocatedStorage * The amount of storage (in gigabytes) to be initially allocated for the replication instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withAllocatedStorage(Integer allocatedStorage) { setAllocatedStorage(allocatedStorage); return this; } /** *
* The compute and memory capacity of the replication instance as defined for the specified replication instance
* class. For example to specify the instance class dms.c4.large, set this parameter to "dms.c4.large"
.
*
* For more information on the settings and capacities for the available replication instance classes, see Choosing the right * DMS replication instance; and, Selecting the best size for a replication instance. *
* * @param replicationInstanceClass * The compute and memory capacity of the replication instance as defined for the specified replication * instance class. For example to specify the instance class dms.c4.large, set this parameter to *"dms.c4.large"
.
* * For more information on the settings and capacities for the available replication instance classes, see Choosing the * right DMS replication instance; and, Selecting the best size for a replication instance. */ public void setReplicationInstanceClass(String replicationInstanceClass) { this.replicationInstanceClass = replicationInstanceClass; } /** *
* The compute and memory capacity of the replication instance as defined for the specified replication instance
* class. For example to specify the instance class dms.c4.large, set this parameter to "dms.c4.large"
.
*
* For more information on the settings and capacities for the available replication instance classes, see Choosing the right * DMS replication instance; and, Selecting the best size for a replication instance. *
* * @return The compute and memory capacity of the replication instance as defined for the specified replication * instance class. For example to specify the instance class dms.c4.large, set this parameter to *"dms.c4.large"
.
* * For more information on the settings and capacities for the available replication instance classes, see * Choosing * the right DMS replication instance; and, Selecting the best size for a replication instance. */ public String getReplicationInstanceClass() { return this.replicationInstanceClass; } /** *
* The compute and memory capacity of the replication instance as defined for the specified replication instance
* class. For example to specify the instance class dms.c4.large, set this parameter to "dms.c4.large"
.
*
* For more information on the settings and capacities for the available replication instance classes, see Choosing the right * DMS replication instance; and, Selecting the best size for a replication instance. *
* * @param replicationInstanceClass * The compute and memory capacity of the replication instance as defined for the specified replication * instance class. For example to specify the instance class dms.c4.large, set this parameter to *"dms.c4.large"
.
* * For more information on the settings and capacities for the available replication instance classes, see Choosing the * right DMS replication instance; and, Selecting the best size for a replication instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withReplicationInstanceClass(String replicationInstanceClass) { setReplicationInstanceClass(replicationInstanceClass); return this; } /** *
* Specifies the VPC security group to be used with the replication instance. The VPC security group must work with * the VPC containing the replication instance. *
* * @return Specifies the VPC security group to be used with the replication instance. The VPC security group must * work with the VPC containing the replication instance. */ public java.util.List* Specifies the VPC security group to be used with the replication instance. The VPC security group must work with * the VPC containing the replication instance. *
* * @param vpcSecurityGroupIds * Specifies the VPC security group to be used with the replication instance. The VPC security group must * work with the VPC containing the replication instance. */ public void setVpcSecurityGroupIds(java.util.Collection* Specifies the VPC security group to be used with the replication instance. The VPC security group must work with * the VPC containing the replication instance. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setVpcSecurityGroupIds(java.util.Collection)} or {@link #withVpcSecurityGroupIds(java.util.Collection)} * if you want to override the existing values. *
* * @param vpcSecurityGroupIds * Specifies the VPC security group to be used with the replication instance. The VPC security group must * work with the VPC containing the replication instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withVpcSecurityGroupIds(String... vpcSecurityGroupIds) { if (this.vpcSecurityGroupIds == null) { setVpcSecurityGroupIds(new java.util.ArrayList* Specifies the VPC security group to be used with the replication instance. The VPC security group must work with * the VPC containing the replication instance. *
* * @param vpcSecurityGroupIds * Specifies the VPC security group to be used with the replication instance. The VPC security group must * work with the VPC containing the replication instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withVpcSecurityGroupIds(java.util.Collection
* The Availability Zone where the replication instance will be created. The default value is a random,
* system-chosen Availability Zone in the endpoint's Amazon Web Services Region, for example:
* us-east-1d
.
*
us-east-1d
.
*/
public void setAvailabilityZone(String availabilityZone) {
this.availabilityZone = availabilityZone;
}
/**
*
* The Availability Zone where the replication instance will be created. The default value is a random,
* system-chosen Availability Zone in the endpoint's Amazon Web Services Region, for example:
* us-east-1d
.
*
us-east-1d
.
*/
public String getAvailabilityZone() {
return this.availabilityZone;
}
/**
*
* The Availability Zone where the replication instance will be created. The default value is a random,
* system-chosen Availability Zone in the endpoint's Amazon Web Services Region, for example:
* us-east-1d
.
*
us-east-1d
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateReplicationInstanceRequest withAvailabilityZone(String availabilityZone) {
setAvailabilityZone(availabilityZone);
return this;
}
/**
* * A subnet group to associate with the replication instance. *
* * @param replicationSubnetGroupIdentifier * A subnet group to associate with the replication instance. */ public void setReplicationSubnetGroupIdentifier(String replicationSubnetGroupIdentifier) { this.replicationSubnetGroupIdentifier = replicationSubnetGroupIdentifier; } /** ** A subnet group to associate with the replication instance. *
* * @return A subnet group to associate with the replication instance. */ public String getReplicationSubnetGroupIdentifier() { return this.replicationSubnetGroupIdentifier; } /** ** A subnet group to associate with the replication instance. *
* * @param replicationSubnetGroupIdentifier * A subnet group to associate with the replication instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withReplicationSubnetGroupIdentifier(String replicationSubnetGroupIdentifier) { setReplicationSubnetGroupIdentifier(replicationSubnetGroupIdentifier); return this; } /** ** The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: A 30-minute window selected at random from an 8-hour block of time per Amazon Web Services Region, * occurring on a random day of the week. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
* * @param preferredMaintenanceWindow * The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: A 30-minute window selected at random from an 8-hour block of time per Amazon Web Services * Region, occurring on a random day of the week. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. */ public void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; } /** *
* The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: A 30-minute window selected at random from an 8-hour block of time per Amazon Web Services Region, * occurring on a random day of the week. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
* * @return The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: A 30-minute window selected at random from an 8-hour block of time per Amazon Web Services * Region, occurring on a random day of the week. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. */ public String getPreferredMaintenanceWindow() { return this.preferredMaintenanceWindow; } /** *
* The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: A 30-minute window selected at random from an 8-hour block of time per Amazon Web Services Region, * occurring on a random day of the week. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
* * @param preferredMaintenanceWindow * The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: A 30-minute window selected at random from an 8-hour block of time per Amazon Web Services * Region, occurring on a random day of the week. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withPreferredMaintenanceWindow(String preferredMaintenanceWindow) { setPreferredMaintenanceWindow(preferredMaintenanceWindow); return this; } /** *
* Specifies whether the replication instance is a Multi-AZ deployment. You can't set the
* AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*
AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*/
public void setMultiAZ(Boolean multiAZ) {
this.multiAZ = multiAZ;
}
/**
*
* Specifies whether the replication instance is a Multi-AZ deployment. You can't set the
* AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*
AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*/
public Boolean getMultiAZ() {
return this.multiAZ;
}
/**
*
* Specifies whether the replication instance is a Multi-AZ deployment. You can't set the
* AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*
AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateReplicationInstanceRequest withMultiAZ(Boolean multiAZ) {
setMultiAZ(multiAZ);
return this;
}
/**
*
* Specifies whether the replication instance is a Multi-AZ deployment. You can't set the
* AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*
AvailabilityZone
parameter if the Multi-AZ parameter is set to true
.
*/
public Boolean isMultiAZ() {
return this.multiAZ;
}
/**
* * The engine version number of the replication instance. *
** If an engine version number is not specified when a replication instance is created, the default is the latest * engine version available. *
* * @param engineVersion * The engine version number of the replication instance. ** If an engine version number is not specified when a replication instance is created, the default is the * latest engine version available. */ public void setEngineVersion(String engineVersion) { this.engineVersion = engineVersion; } /** *
* The engine version number of the replication instance. *
** If an engine version number is not specified when a replication instance is created, the default is the latest * engine version available. *
* * @return The engine version number of the replication instance. ** If an engine version number is not specified when a replication instance is created, the default is the * latest engine version available. */ public String getEngineVersion() { return this.engineVersion; } /** *
* The engine version number of the replication instance. *
** If an engine version number is not specified when a replication instance is created, the default is the latest * engine version available. *
* * @param engineVersion * The engine version number of the replication instance. ** If an engine version number is not specified when a replication instance is created, the default is the * latest engine version available. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withEngineVersion(String engineVersion) { setEngineVersion(engineVersion); return this; } /** *
* A value that indicates whether minor engine upgrades are applied automatically to the replication instance during
* the maintenance window. This parameter defaults to true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when you create
* a replication instance. For example, if you set EngineVersion
to a lower version number than the
* current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS uses the
* engine version specified by the EngineVersion
parameter.
*
true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when you
* create a replication instance. For example, if you set EngineVersion
to a lower version
* number than the current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS
* uses the engine version specified by the EngineVersion
parameter.
*/
public void setAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) {
this.autoMinorVersionUpgrade = autoMinorVersionUpgrade;
}
/**
*
* A value that indicates whether minor engine upgrades are applied automatically to the replication instance during
* the maintenance window. This parameter defaults to true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when you create
* a replication instance. For example, if you set EngineVersion
to a lower version number than the
* current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS uses the
* engine version specified by the EngineVersion
parameter.
*
true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when
* you create a replication instance. For example, if you set EngineVersion
to a lower version
* number than the current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS
* uses the engine version specified by the EngineVersion
parameter.
*/
public Boolean getAutoMinorVersionUpgrade() {
return this.autoMinorVersionUpgrade;
}
/**
*
* A value that indicates whether minor engine upgrades are applied automatically to the replication instance during
* the maintenance window. This parameter defaults to true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when you create
* a replication instance. For example, if you set EngineVersion
to a lower version number than the
* current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS uses the
* engine version specified by the EngineVersion
parameter.
*
true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when you
* create a replication instance. For example, if you set EngineVersion
to a lower version
* number than the current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS
* uses the engine version specified by the EngineVersion
parameter.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateReplicationInstanceRequest withAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) {
setAutoMinorVersionUpgrade(autoMinorVersionUpgrade);
return this;
}
/**
*
* A value that indicates whether minor engine upgrades are applied automatically to the replication instance during
* the maintenance window. This parameter defaults to true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when you create
* a replication instance. For example, if you set EngineVersion
to a lower version number than the
* current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS uses the
* engine version specified by the EngineVersion
parameter.
*
true
.
*
* Default: true
*
* When AutoMinorVersionUpgrade
is enabled, DMS uses the current default engine version when
* you create a replication instance. For example, if you set EngineVersion
to a lower version
* number than the current default version, DMS uses the default version.
*
* If AutoMinorVersionUpgrade
isn’t enabled when you create a replication instance, DMS
* uses the engine version specified by the EngineVersion
parameter.
*/
public Boolean isAutoMinorVersionUpgrade() {
return this.autoMinorVersionUpgrade;
}
/**
*
* One or more tags to be assigned to the replication instance. *
* * @return One or more tags to be assigned to the replication instance. */ public java.util.List* One or more tags to be assigned to the replication instance. *
* * @param tags * One or more tags to be assigned to the replication instance. */ public void setTags(java.util.Collection* One or more tags to be assigned to the replication instance. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *
* * @param tags * One or more tags to be assigned to the replication instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList* One or more tags to be assigned to the replication instance. *
* * @param tags * One or more tags to be assigned to the replication instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withTags(java.util.Collection* An KMS key identifier that is used to encrypt the data on the replication instance. *
*
* If you don't specify a value for the KmsKeyId
parameter, then DMS uses your default encryption key.
*
* KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has * a different default encryption key for each Amazon Web Services Region. *
* * @param kmsKeyId * An KMS key identifier that is used to encrypt the data on the replication instance. *
* If you don't specify a value for the KmsKeyId
parameter, then DMS uses your default
* encryption key.
*
* KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services * account has a different default encryption key for each Amazon Web Services Region. */ public void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } /** *
* An KMS key identifier that is used to encrypt the data on the replication instance. *
*
* If you don't specify a value for the KmsKeyId
parameter, then DMS uses your default encryption key.
*
* KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has * a different default encryption key for each Amazon Web Services Region. *
* * @return An KMS key identifier that is used to encrypt the data on the replication instance. *
* If you don't specify a value for the KmsKeyId
parameter, then DMS uses your default
* encryption key.
*
* KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services * account has a different default encryption key for each Amazon Web Services Region. */ public String getKmsKeyId() { return this.kmsKeyId; } /** *
* An KMS key identifier that is used to encrypt the data on the replication instance. *
*
* If you don't specify a value for the KmsKeyId
parameter, then DMS uses your default encryption key.
*
* KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has * a different default encryption key for each Amazon Web Services Region. *
* * @param kmsKeyId * An KMS key identifier that is used to encrypt the data on the replication instance. *
* If you don't specify a value for the KmsKeyId
parameter, then DMS uses your default
* encryption key.
*
* KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services * account has a different default encryption key for each Amazon Web Services Region. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withKmsKeyId(String kmsKeyId) { setKmsKeyId(kmsKeyId); return this; } /** *
* Specifies the accessibility options for the replication instance. A value of true
represents an
* instance with a public IP address. A value of false
represents an instance with a private IP
* address. The default value is true
.
*
true
represents
* an instance with a public IP address. A value of false
represents an instance with a private
* IP address. The default value is true
.
*/
public void setPubliclyAccessible(Boolean publiclyAccessible) {
this.publiclyAccessible = publiclyAccessible;
}
/**
*
* Specifies the accessibility options for the replication instance. A value of true
represents an
* instance with a public IP address. A value of false
represents an instance with a private IP
* address. The default value is true
.
*
true
represents
* an instance with a public IP address. A value of false
represents an instance with a private
* IP address. The default value is true
.
*/
public Boolean getPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
*
* Specifies the accessibility options for the replication instance. A value of true
represents an
* instance with a public IP address. A value of false
represents an instance with a private IP
* address. The default value is true
.
*
true
represents
* an instance with a public IP address. A value of false
represents an instance with a private
* IP address. The default value is true
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateReplicationInstanceRequest withPubliclyAccessible(Boolean publiclyAccessible) {
setPubliclyAccessible(publiclyAccessible);
return this;
}
/**
*
* Specifies the accessibility options for the replication instance. A value of true
represents an
* instance with a public IP address. A value of false
represents an instance with a private IP
* address. The default value is true
.
*
true
represents
* an instance with a public IP address. A value of false
represents an instance with a private
* IP address. The default value is true
.
*/
public Boolean isPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
*
* A list of custom DNS name servers supported for the replication instance to access your on-premise source or
* target database. This list overrides the default name servers supported by the replication instance. You can
* specify a comma-separated list of internet addresses for up to four on-premise DNS name servers. For example:
* "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
*
"1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
*/
public void setDnsNameServers(String dnsNameServers) {
this.dnsNameServers = dnsNameServers;
}
/**
*
* A list of custom DNS name servers supported for the replication instance to access your on-premise source or
* target database. This list overrides the default name servers supported by the replication instance. You can
* specify a comma-separated list of internet addresses for up to four on-premise DNS name servers. For example:
* "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
*
"1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
*/
public String getDnsNameServers() {
return this.dnsNameServers;
}
/**
*
* A list of custom DNS name servers supported for the replication instance to access your on-premise source or
* target database. This list overrides the default name servers supported by the replication instance. You can
* specify a comma-separated list of internet addresses for up to four on-premise DNS name servers. For example:
* "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
*
"1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateReplicationInstanceRequest withDnsNameServers(String dnsNameServers) {
setDnsNameServers(dnsNameServers);
return this;
}
/**
*
* A friendly name for the resource identifier at the end of the EndpointArn
response parameter that is
* returned in the created Endpoint
object. The value for this parameter can have up to 31 characters.
* It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain two
* consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1
. For example, this
* value might result in the EndpointArn
value
* arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1
. If you don't specify a
* ResourceIdentifier
value, DMS generates a default identifier value for the end of
* EndpointArn
.
*
EndpointArn
response parameter
* that is returned in the created Endpoint
object. The value for this parameter can have up to
* 31 characters. It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a
* hyphen or contain two consecutive hyphens, and can only begin with a letter, such as
* Example-App-ARN1
. For example, this value might result in the EndpointArn
value
* arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1
. If you don't specify a
* ResourceIdentifier
value, DMS generates a default identifier value for the end of
* EndpointArn
.
*/
public void setResourceIdentifier(String resourceIdentifier) {
this.resourceIdentifier = resourceIdentifier;
}
/**
*
* A friendly name for the resource identifier at the end of the EndpointArn
response parameter that is
* returned in the created Endpoint
object. The value for this parameter can have up to 31 characters.
* It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain two
* consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1
. For example, this
* value might result in the EndpointArn
value
* arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1
. If you don't specify a
* ResourceIdentifier
value, DMS generates a default identifier value for the end of
* EndpointArn
.
*
EndpointArn
response parameter
* that is returned in the created Endpoint
object. The value for this parameter can have up to
* 31 characters. It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a
* hyphen or contain two consecutive hyphens, and can only begin with a letter, such as
* Example-App-ARN1
. For example, this value might result in the EndpointArn
value
* arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1
. If you don't specify a
* ResourceIdentifier
value, DMS generates a default identifier value for the end of
* EndpointArn
.
*/
public String getResourceIdentifier() {
return this.resourceIdentifier;
}
/**
*
* A friendly name for the resource identifier at the end of the EndpointArn
response parameter that is
* returned in the created Endpoint
object. The value for this parameter can have up to 31 characters.
* It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain two
* consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1
. For example, this
* value might result in the EndpointArn
value
* arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1
. If you don't specify a
* ResourceIdentifier
value, DMS generates a default identifier value for the end of
* EndpointArn
.
*
EndpointArn
response parameter
* that is returned in the created Endpoint
object. The value for this parameter can have up to
* 31 characters. It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a
* hyphen or contain two consecutive hyphens, and can only begin with a letter, such as
* Example-App-ARN1
. For example, this value might result in the EndpointArn
value
* arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1
. If you don't specify a
* ResourceIdentifier
value, DMS generates a default identifier value for the end of
* EndpointArn
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateReplicationInstanceRequest withResourceIdentifier(String resourceIdentifier) {
setResourceIdentifier(resourceIdentifier);
return this;
}
/**
* * The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports * both IPv4 and IPv6 addressing. IPv6 only is not yet supported. *
* * @param networkType * The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that * supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported. */ public void setNetworkType(String networkType) { this.networkType = networkType; } /** ** The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports * both IPv4 and IPv6 addressing. IPv6 only is not yet supported. *
* * @return The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that * supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported. */ public String getNetworkType() { return this.networkType; } /** ** The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports * both IPv4 and IPv6 addressing. IPv6 only is not yet supported. *
* * @param networkType * The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that * supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateReplicationInstanceRequest withNetworkType(String networkType) { setNetworkType(networkType); 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 (getReplicationInstanceIdentifier() != null) sb.append("ReplicationInstanceIdentifier: ").append(getReplicationInstanceIdentifier()).append(","); if (getAllocatedStorage() != null) sb.append("AllocatedStorage: ").append(getAllocatedStorage()).append(","); if (getReplicationInstanceClass() != null) sb.append("ReplicationInstanceClass: ").append(getReplicationInstanceClass()).append(","); if (getVpcSecurityGroupIds() != null) sb.append("VpcSecurityGroupIds: ").append(getVpcSecurityGroupIds()).append(","); if (getAvailabilityZone() != null) sb.append("AvailabilityZone: ").append(getAvailabilityZone()).append(","); if (getReplicationSubnetGroupIdentifier() != null) sb.append("ReplicationSubnetGroupIdentifier: ").append(getReplicationSubnetGroupIdentifier()).append(","); if (getPreferredMaintenanceWindow() != null) sb.append("PreferredMaintenanceWindow: ").append(getPreferredMaintenanceWindow()).append(","); if (getMultiAZ() != null) sb.append("MultiAZ: ").append(getMultiAZ()).append(","); if (getEngineVersion() != null) sb.append("EngineVersion: ").append(getEngineVersion()).append(","); if (getAutoMinorVersionUpgrade() != null) sb.append("AutoMinorVersionUpgrade: ").append(getAutoMinorVersionUpgrade()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getKmsKeyId() != null) sb.append("KmsKeyId: ").append(getKmsKeyId()).append(","); if (getPubliclyAccessible() != null) sb.append("PubliclyAccessible: ").append(getPubliclyAccessible()).append(","); if (getDnsNameServers() != null) sb.append("DnsNameServers: ").append(getDnsNameServers()).append(","); if (getResourceIdentifier() != null) sb.append("ResourceIdentifier: ").append(getResourceIdentifier()).append(","); if (getNetworkType() != null) sb.append("NetworkType: ").append(getNetworkType()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateReplicationInstanceRequest == false) return false; CreateReplicationInstanceRequest other = (CreateReplicationInstanceRequest) obj; if (other.getReplicationInstanceIdentifier() == null ^ this.getReplicationInstanceIdentifier() == null) return false; if (other.getReplicationInstanceIdentifier() != null && other.getReplicationInstanceIdentifier().equals(this.getReplicationInstanceIdentifier()) == false) return false; if (other.getAllocatedStorage() == null ^ this.getAllocatedStorage() == null) return false; if (other.getAllocatedStorage() != null && other.getAllocatedStorage().equals(this.getAllocatedStorage()) == false) return false; if (other.getReplicationInstanceClass() == null ^ this.getReplicationInstanceClass() == null) return false; if (other.getReplicationInstanceClass() != null && other.getReplicationInstanceClass().equals(this.getReplicationInstanceClass()) == false) return false; if (other.getVpcSecurityGroupIds() == null ^ this.getVpcSecurityGroupIds() == null) return false; if (other.getVpcSecurityGroupIds() != null && other.getVpcSecurityGroupIds().equals(this.getVpcSecurityGroupIds()) == false) return false; if (other.getAvailabilityZone() == null ^ this.getAvailabilityZone() == null) return false; if (other.getAvailabilityZone() != null && other.getAvailabilityZone().equals(this.getAvailabilityZone()) == false) return false; if (other.getReplicationSubnetGroupIdentifier() == null ^ this.getReplicationSubnetGroupIdentifier() == null) return false; if (other.getReplicationSubnetGroupIdentifier() != null && other.getReplicationSubnetGroupIdentifier().equals(this.getReplicationSubnetGroupIdentifier()) == false) return false; if (other.getPreferredMaintenanceWindow() == null ^ this.getPreferredMaintenanceWindow() == null) return false; if (other.getPreferredMaintenanceWindow() != null && other.getPreferredMaintenanceWindow().equals(this.getPreferredMaintenanceWindow()) == false) return false; if (other.getMultiAZ() == null ^ this.getMultiAZ() == null) return false; if (other.getMultiAZ() != null && other.getMultiAZ().equals(this.getMultiAZ()) == false) return false; if (other.getEngineVersion() == null ^ this.getEngineVersion() == null) return false; if (other.getEngineVersion() != null && other.getEngineVersion().equals(this.getEngineVersion()) == false) return false; if (other.getAutoMinorVersionUpgrade() == null ^ this.getAutoMinorVersionUpgrade() == null) return false; if (other.getAutoMinorVersionUpgrade() != null && other.getAutoMinorVersionUpgrade().equals(this.getAutoMinorVersionUpgrade()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getKmsKeyId() == null ^ this.getKmsKeyId() == null) return false; if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false) return false; if (other.getPubliclyAccessible() == null ^ this.getPubliclyAccessible() == null) return false; if (other.getPubliclyAccessible() != null && other.getPubliclyAccessible().equals(this.getPubliclyAccessible()) == false) return false; if (other.getDnsNameServers() == null ^ this.getDnsNameServers() == null) return false; if (other.getDnsNameServers() != null && other.getDnsNameServers().equals(this.getDnsNameServers()) == false) return false; if (other.getResourceIdentifier() == null ^ this.getResourceIdentifier() == null) return false; if (other.getResourceIdentifier() != null && other.getResourceIdentifier().equals(this.getResourceIdentifier()) == false) return false; if (other.getNetworkType() == null ^ this.getNetworkType() == null) return false; if (other.getNetworkType() != null && other.getNetworkType().equals(this.getNetworkType()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getReplicationInstanceIdentifier() == null) ? 0 : getReplicationInstanceIdentifier().hashCode()); hashCode = prime * hashCode + ((getAllocatedStorage() == null) ? 0 : getAllocatedStorage().hashCode()); hashCode = prime * hashCode + ((getReplicationInstanceClass() == null) ? 0 : getReplicationInstanceClass().hashCode()); hashCode = prime * hashCode + ((getVpcSecurityGroupIds() == null) ? 0 : getVpcSecurityGroupIds().hashCode()); hashCode = prime * hashCode + ((getAvailabilityZone() == null) ? 0 : getAvailabilityZone().hashCode()); hashCode = prime * hashCode + ((getReplicationSubnetGroupIdentifier() == null) ? 0 : getReplicationSubnetGroupIdentifier().hashCode()); hashCode = prime * hashCode + ((getPreferredMaintenanceWindow() == null) ? 0 : getPreferredMaintenanceWindow().hashCode()); hashCode = prime * hashCode + ((getMultiAZ() == null) ? 0 : getMultiAZ().hashCode()); hashCode = prime * hashCode + ((getEngineVersion() == null) ? 0 : getEngineVersion().hashCode()); hashCode = prime * hashCode + ((getAutoMinorVersionUpgrade() == null) ? 0 : getAutoMinorVersionUpgrade().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode()); hashCode = prime * hashCode + ((getPubliclyAccessible() == null) ? 0 : getPubliclyAccessible().hashCode()); hashCode = prime * hashCode + ((getDnsNameServers() == null) ? 0 : getDnsNameServers().hashCode()); hashCode = prime * hashCode + ((getResourceIdentifier() == null) ? 0 : getResourceIdentifier().hashCode()); hashCode = prime * hashCode + ((getNetworkType() == null) ? 0 : getNetworkType().hashCode()); return hashCode; } @Override public CreateReplicationInstanceRequest clone() { return (CreateReplicationInstanceRequest) super.clone(); } }