
com.pulumi.azurenative.awsconnector.outputs.AwsDatabaseMigrationServiceReplicationInstancePropertiesResponse Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.awsconnector.outputs;
import com.pulumi.azurenative.awsconnector.outputs.ReplicationPendingModifiedValuesResponse;
import com.pulumi.azurenative.awsconnector.outputs.ReplicationSubnetGroupResponse;
import com.pulumi.azurenative.awsconnector.outputs.VpcSecurityGroupMembershipResponse;
import com.pulumi.core.annotations.CustomType;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class AwsDatabaseMigrationServiceReplicationInstancePropertiesResponse {
/**
* @return <p>The amount of storage (in gigabytes) that is allocated for the replication instance.</p>
*
*/
private @Nullable Integer allocatedStorage;
/**
* @return <p>Boolean value indicating if minor version upgrades will be automatically applied to the instance.</p>
*
*/
private @Nullable Boolean autoMinorVersionUpgrade;
/**
* @return <p>The Availability Zone for the instance.</p>
*
*/
private @Nullable String availabilityZone;
/**
* @return <p>The DNS name servers supported for the replication instance to access your on-premise source or target database.</p>
*
*/
private @Nullable String dnsNameServers;
/**
* @return <p>The engine version number of the replication instance.</p> <p>If an engine version number is not specified when a replication instance is created, the default is the latest engine version available.</p> <p>When modifying a major engine version of an instance, also set <code>AllowMajorVersionUpgrade</code> to <code>true</code>.</p>
*
*/
private @Nullable String engineVersion;
/**
* @return <p> The expiration date of the free replication instance that is part of the Free DMS program. </p>
*
*/
private @Nullable String freeUntil;
/**
* @return <p>The time the replication instance was created.</p>
*
*/
private @Nullable String instanceCreateTime;
/**
* @return <p>An KMS key identifier that is used to encrypt the data on the replication instance.</p> <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p> <p>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.</p>
*
*/
private @Nullable String kmsKeyId;
/**
* @return <p> Specifies whether the replication instance is a Multi-AZ deployment. You can't set the <code>AvailabilityZone</code> parameter if the Multi-AZ parameter is set to <code>true</code>. </p>
*
*/
private @Nullable Boolean multiAZ;
/**
* @return <p>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.</p>
*
*/
private @Nullable String networkType;
/**
* @return <p>The pending modification values.</p>
*
*/
private @Nullable ReplicationPendingModifiedValuesResponse pendingModifiedValues;
/**
* @return <p>The maintenance window times for the replication instance. Any pending upgrades to the replication instance are performed during this time.</p>
*
*/
private @Nullable String preferredMaintenanceWindow;
/**
* @return <p> Specifies the accessibility options for the replication instance. A value of <code>true</code> represents an instance with a public IP address. A value of <code>false</code> represents an instance with a private IP address. The default value is <code>true</code>. </p>
*
*/
private @Nullable Boolean publiclyAccessible;
/**
* @return <p>The Amazon Resource Name (ARN) of the replication instance.</p>
*
*/
private @Nullable String replicationInstanceArn;
/**
* @return <p>The compute and memory capacity of the replication instance as defined for the specified replication instance class. It is a required parameter, although a default value is pre-selected in the DMS console.</p> <p>For more information on the settings and capacities for the available replication instance classes, see <a href='https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.html#CHAP_ReplicationInstance.InDepth'> Selecting the right DMS replication instance for your migration</a>. </p>
*
*/
private @Nullable String replicationInstanceClass;
/**
* @return <p>The replication instance identifier is a required parameter. This parameter is stored as a lowercase string.</p> <p>Constraints:</p> <ul> <li> <p>Must contain 1-63 alphanumeric characters or hyphens.</p> </li> <li> <p>First character must be a letter.</p> </li> <li> <p>Cannot end with a hyphen or contain two consecutive hyphens.</p> </li> </ul> <p>Example: <code>myrepinstance</code> </p>
*
*/
private @Nullable String replicationInstanceIdentifier;
/**
* @return <p>One or more IPv6 addresses for the replication instance.</p>
*
*/
private @Nullable List replicationInstanceIpv6Addresses;
/**
* @return <p>The private IP address of the replication instance.</p>
*
*/
private @Nullable String replicationInstancePrivateIpAddress;
/**
* @return <p>One or more private IP addresses for the replication instance.</p>
*
*/
private @Nullable List replicationInstancePrivateIpAddresses;
/**
* @return <p>The public IP address of the replication instance.</p>
*
*/
private @Nullable String replicationInstancePublicIpAddress;
/**
* @return <p>One or more public IP addresses for the replication instance.</p>
*
*/
private @Nullable List replicationInstancePublicIpAddresses;
/**
* @return <p>The status of the replication instance. The possible return values include:</p> <ul> <li> <p> <code>'available'</code> </p> </li> <li> <p> <code>'creating'</code> </p> </li> <li> <p> <code>'deleted'</code> </p> </li> <li> <p> <code>'deleting'</code> </p> </li> <li> <p> <code>'failed'</code> </p> </li> <li> <p> <code>'modifying'</code> </p> </li> <li> <p> <code>'upgrading'</code> </p> </li> <li> <p> <code>'rebooting'</code> </p> </li> <li> <p> <code>'resetting-master-credentials'</code> </p> </li> <li> <p> <code>'storage-full'</code> </p> </li> <li> <p> <code>'incompatible-credentials'</code> </p> </li> <li> <p> <code>'incompatible-network'</code> </p> </li> <li> <p> <code>'maintenance'</code> </p> </li> </ul>
*
*/
private @Nullable String replicationInstanceStatus;
/**
* @return <p>The subnet group for the replication instance.</p>
*
*/
private @Nullable ReplicationSubnetGroupResponse replicationSubnetGroup;
/**
* @return <p>The Availability Zone of the standby replication instance in a Multi-AZ deployment.</p>
*
*/
private @Nullable String secondaryAvailabilityZone;
/**
* @return <p>The VPC security group for the instance.</p>
*
*/
private @Nullable List vpcSecurityGroups;
private AwsDatabaseMigrationServiceReplicationInstancePropertiesResponse() {}
/**
* @return <p>The amount of storage (in gigabytes) that is allocated for the replication instance.</p>
*
*/
public Optional allocatedStorage() {
return Optional.ofNullable(this.allocatedStorage);
}
/**
* @return <p>Boolean value indicating if minor version upgrades will be automatically applied to the instance.</p>
*
*/
public Optional autoMinorVersionUpgrade() {
return Optional.ofNullable(this.autoMinorVersionUpgrade);
}
/**
* @return <p>The Availability Zone for the instance.</p>
*
*/
public Optional availabilityZone() {
return Optional.ofNullable(this.availabilityZone);
}
/**
* @return <p>The DNS name servers supported for the replication instance to access your on-premise source or target database.</p>
*
*/
public Optional dnsNameServers() {
return Optional.ofNullable(this.dnsNameServers);
}
/**
* @return <p>The engine version number of the replication instance.</p> <p>If an engine version number is not specified when a replication instance is created, the default is the latest engine version available.</p> <p>When modifying a major engine version of an instance, also set <code>AllowMajorVersionUpgrade</code> to <code>true</code>.</p>
*
*/
public Optional engineVersion() {
return Optional.ofNullable(this.engineVersion);
}
/**
* @return <p> The expiration date of the free replication instance that is part of the Free DMS program. </p>
*
*/
public Optional freeUntil() {
return Optional.ofNullable(this.freeUntil);
}
/**
* @return <p>The time the replication instance was created.</p>
*
*/
public Optional instanceCreateTime() {
return Optional.ofNullable(this.instanceCreateTime);
}
/**
* @return <p>An KMS key identifier that is used to encrypt the data on the replication instance.</p> <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p> <p>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.</p>
*
*/
public Optional kmsKeyId() {
return Optional.ofNullable(this.kmsKeyId);
}
/**
* @return <p> Specifies whether the replication instance is a Multi-AZ deployment. You can't set the <code>AvailabilityZone</code> parameter if the Multi-AZ parameter is set to <code>true</code>. </p>
*
*/
public Optional multiAZ() {
return Optional.ofNullable(this.multiAZ);
}
/**
* @return <p>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.</p>
*
*/
public Optional networkType() {
return Optional.ofNullable(this.networkType);
}
/**
* @return <p>The pending modification values.</p>
*
*/
public Optional pendingModifiedValues() {
return Optional.ofNullable(this.pendingModifiedValues);
}
/**
* @return <p>The maintenance window times for the replication instance. Any pending upgrades to the replication instance are performed during this time.</p>
*
*/
public Optional preferredMaintenanceWindow() {
return Optional.ofNullable(this.preferredMaintenanceWindow);
}
/**
* @return <p> Specifies the accessibility options for the replication instance. A value of <code>true</code> represents an instance with a public IP address. A value of <code>false</code> represents an instance with a private IP address. The default value is <code>true</code>. </p>
*
*/
public Optional publiclyAccessible() {
return Optional.ofNullable(this.publiclyAccessible);
}
/**
* @return <p>The Amazon Resource Name (ARN) of the replication instance.</p>
*
*/
public Optional replicationInstanceArn() {
return Optional.ofNullable(this.replicationInstanceArn);
}
/**
* @return <p>The compute and memory capacity of the replication instance as defined for the specified replication instance class. It is a required parameter, although a default value is pre-selected in the DMS console.</p> <p>For more information on the settings and capacities for the available replication instance classes, see <a href='https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.html#CHAP_ReplicationInstance.InDepth'> Selecting the right DMS replication instance for your migration</a>. </p>
*
*/
public Optional replicationInstanceClass() {
return Optional.ofNullable(this.replicationInstanceClass);
}
/**
* @return <p>The replication instance identifier is a required parameter. This parameter is stored as a lowercase string.</p> <p>Constraints:</p> <ul> <li> <p>Must contain 1-63 alphanumeric characters or hyphens.</p> </li> <li> <p>First character must be a letter.</p> </li> <li> <p>Cannot end with a hyphen or contain two consecutive hyphens.</p> </li> </ul> <p>Example: <code>myrepinstance</code> </p>
*
*/
public Optional replicationInstanceIdentifier() {
return Optional.ofNullable(this.replicationInstanceIdentifier);
}
/**
* @return <p>One or more IPv6 addresses for the replication instance.</p>
*
*/
public List replicationInstanceIpv6Addresses() {
return this.replicationInstanceIpv6Addresses == null ? List.of() : this.replicationInstanceIpv6Addresses;
}
/**
* @return <p>The private IP address of the replication instance.</p>
*
*/
public Optional replicationInstancePrivateIpAddress() {
return Optional.ofNullable(this.replicationInstancePrivateIpAddress);
}
/**
* @return <p>One or more private IP addresses for the replication instance.</p>
*
*/
public List replicationInstancePrivateIpAddresses() {
return this.replicationInstancePrivateIpAddresses == null ? List.of() : this.replicationInstancePrivateIpAddresses;
}
/**
* @return <p>The public IP address of the replication instance.</p>
*
*/
public Optional replicationInstancePublicIpAddress() {
return Optional.ofNullable(this.replicationInstancePublicIpAddress);
}
/**
* @return <p>One or more public IP addresses for the replication instance.</p>
*
*/
public List replicationInstancePublicIpAddresses() {
return this.replicationInstancePublicIpAddresses == null ? List.of() : this.replicationInstancePublicIpAddresses;
}
/**
* @return <p>The status of the replication instance. The possible return values include:</p> <ul> <li> <p> <code>'available'</code> </p> </li> <li> <p> <code>'creating'</code> </p> </li> <li> <p> <code>'deleted'</code> </p> </li> <li> <p> <code>'deleting'</code> </p> </li> <li> <p> <code>'failed'</code> </p> </li> <li> <p> <code>'modifying'</code> </p> </li> <li> <p> <code>'upgrading'</code> </p> </li> <li> <p> <code>'rebooting'</code> </p> </li> <li> <p> <code>'resetting-master-credentials'</code> </p> </li> <li> <p> <code>'storage-full'</code> </p> </li> <li> <p> <code>'incompatible-credentials'</code> </p> </li> <li> <p> <code>'incompatible-network'</code> </p> </li> <li> <p> <code>'maintenance'</code> </p> </li> </ul>
*
*/
public Optional replicationInstanceStatus() {
return Optional.ofNullable(this.replicationInstanceStatus);
}
/**
* @return <p>The subnet group for the replication instance.</p>
*
*/
public Optional replicationSubnetGroup() {
return Optional.ofNullable(this.replicationSubnetGroup);
}
/**
* @return <p>The Availability Zone of the standby replication instance in a Multi-AZ deployment.</p>
*
*/
public Optional secondaryAvailabilityZone() {
return Optional.ofNullable(this.secondaryAvailabilityZone);
}
/**
* @return <p>The VPC security group for the instance.</p>
*
*/
public List vpcSecurityGroups() {
return this.vpcSecurityGroups == null ? List.of() : this.vpcSecurityGroups;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(AwsDatabaseMigrationServiceReplicationInstancePropertiesResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable Integer allocatedStorage;
private @Nullable Boolean autoMinorVersionUpgrade;
private @Nullable String availabilityZone;
private @Nullable String dnsNameServers;
private @Nullable String engineVersion;
private @Nullable String freeUntil;
private @Nullable String instanceCreateTime;
private @Nullable String kmsKeyId;
private @Nullable Boolean multiAZ;
private @Nullable String networkType;
private @Nullable ReplicationPendingModifiedValuesResponse pendingModifiedValues;
private @Nullable String preferredMaintenanceWindow;
private @Nullable Boolean publiclyAccessible;
private @Nullable String replicationInstanceArn;
private @Nullable String replicationInstanceClass;
private @Nullable String replicationInstanceIdentifier;
private @Nullable List replicationInstanceIpv6Addresses;
private @Nullable String replicationInstancePrivateIpAddress;
private @Nullable List replicationInstancePrivateIpAddresses;
private @Nullable String replicationInstancePublicIpAddress;
private @Nullable List replicationInstancePublicIpAddresses;
private @Nullable String replicationInstanceStatus;
private @Nullable ReplicationSubnetGroupResponse replicationSubnetGroup;
private @Nullable String secondaryAvailabilityZone;
private @Nullable List vpcSecurityGroups;
public Builder() {}
public Builder(AwsDatabaseMigrationServiceReplicationInstancePropertiesResponse defaults) {
Objects.requireNonNull(defaults);
this.allocatedStorage = defaults.allocatedStorage;
this.autoMinorVersionUpgrade = defaults.autoMinorVersionUpgrade;
this.availabilityZone = defaults.availabilityZone;
this.dnsNameServers = defaults.dnsNameServers;
this.engineVersion = defaults.engineVersion;
this.freeUntil = defaults.freeUntil;
this.instanceCreateTime = defaults.instanceCreateTime;
this.kmsKeyId = defaults.kmsKeyId;
this.multiAZ = defaults.multiAZ;
this.networkType = defaults.networkType;
this.pendingModifiedValues = defaults.pendingModifiedValues;
this.preferredMaintenanceWindow = defaults.preferredMaintenanceWindow;
this.publiclyAccessible = defaults.publiclyAccessible;
this.replicationInstanceArn = defaults.replicationInstanceArn;
this.replicationInstanceClass = defaults.replicationInstanceClass;
this.replicationInstanceIdentifier = defaults.replicationInstanceIdentifier;
this.replicationInstanceIpv6Addresses = defaults.replicationInstanceIpv6Addresses;
this.replicationInstancePrivateIpAddress = defaults.replicationInstancePrivateIpAddress;
this.replicationInstancePrivateIpAddresses = defaults.replicationInstancePrivateIpAddresses;
this.replicationInstancePublicIpAddress = defaults.replicationInstancePublicIpAddress;
this.replicationInstancePublicIpAddresses = defaults.replicationInstancePublicIpAddresses;
this.replicationInstanceStatus = defaults.replicationInstanceStatus;
this.replicationSubnetGroup = defaults.replicationSubnetGroup;
this.secondaryAvailabilityZone = defaults.secondaryAvailabilityZone;
this.vpcSecurityGroups = defaults.vpcSecurityGroups;
}
@CustomType.Setter
public Builder allocatedStorage(@Nullable Integer allocatedStorage) {
this.allocatedStorage = allocatedStorage;
return this;
}
@CustomType.Setter
public Builder autoMinorVersionUpgrade(@Nullable Boolean autoMinorVersionUpgrade) {
this.autoMinorVersionUpgrade = autoMinorVersionUpgrade;
return this;
}
@CustomType.Setter
public Builder availabilityZone(@Nullable String availabilityZone) {
this.availabilityZone = availabilityZone;
return this;
}
@CustomType.Setter
public Builder dnsNameServers(@Nullable String dnsNameServers) {
this.dnsNameServers = dnsNameServers;
return this;
}
@CustomType.Setter
public Builder engineVersion(@Nullable String engineVersion) {
this.engineVersion = engineVersion;
return this;
}
@CustomType.Setter
public Builder freeUntil(@Nullable String freeUntil) {
this.freeUntil = freeUntil;
return this;
}
@CustomType.Setter
public Builder instanceCreateTime(@Nullable String instanceCreateTime) {
this.instanceCreateTime = instanceCreateTime;
return this;
}
@CustomType.Setter
public Builder kmsKeyId(@Nullable String kmsKeyId) {
this.kmsKeyId = kmsKeyId;
return this;
}
@CustomType.Setter
public Builder multiAZ(@Nullable Boolean multiAZ) {
this.multiAZ = multiAZ;
return this;
}
@CustomType.Setter
public Builder networkType(@Nullable String networkType) {
this.networkType = networkType;
return this;
}
@CustomType.Setter
public Builder pendingModifiedValues(@Nullable ReplicationPendingModifiedValuesResponse pendingModifiedValues) {
this.pendingModifiedValues = pendingModifiedValues;
return this;
}
@CustomType.Setter
public Builder preferredMaintenanceWindow(@Nullable String preferredMaintenanceWindow) {
this.preferredMaintenanceWindow = preferredMaintenanceWindow;
return this;
}
@CustomType.Setter
public Builder publiclyAccessible(@Nullable Boolean publiclyAccessible) {
this.publiclyAccessible = publiclyAccessible;
return this;
}
@CustomType.Setter
public Builder replicationInstanceArn(@Nullable String replicationInstanceArn) {
this.replicationInstanceArn = replicationInstanceArn;
return this;
}
@CustomType.Setter
public Builder replicationInstanceClass(@Nullable String replicationInstanceClass) {
this.replicationInstanceClass = replicationInstanceClass;
return this;
}
@CustomType.Setter
public Builder replicationInstanceIdentifier(@Nullable String replicationInstanceIdentifier) {
this.replicationInstanceIdentifier = replicationInstanceIdentifier;
return this;
}
@CustomType.Setter
public Builder replicationInstanceIpv6Addresses(@Nullable List replicationInstanceIpv6Addresses) {
this.replicationInstanceIpv6Addresses = replicationInstanceIpv6Addresses;
return this;
}
public Builder replicationInstanceIpv6Addresses(String... replicationInstanceIpv6Addresses) {
return replicationInstanceIpv6Addresses(List.of(replicationInstanceIpv6Addresses));
}
@CustomType.Setter
public Builder replicationInstancePrivateIpAddress(@Nullable String replicationInstancePrivateIpAddress) {
this.replicationInstancePrivateIpAddress = replicationInstancePrivateIpAddress;
return this;
}
@CustomType.Setter
public Builder replicationInstancePrivateIpAddresses(@Nullable List replicationInstancePrivateIpAddresses) {
this.replicationInstancePrivateIpAddresses = replicationInstancePrivateIpAddresses;
return this;
}
public Builder replicationInstancePrivateIpAddresses(String... replicationInstancePrivateIpAddresses) {
return replicationInstancePrivateIpAddresses(List.of(replicationInstancePrivateIpAddresses));
}
@CustomType.Setter
public Builder replicationInstancePublicIpAddress(@Nullable String replicationInstancePublicIpAddress) {
this.replicationInstancePublicIpAddress = replicationInstancePublicIpAddress;
return this;
}
@CustomType.Setter
public Builder replicationInstancePublicIpAddresses(@Nullable List replicationInstancePublicIpAddresses) {
this.replicationInstancePublicIpAddresses = replicationInstancePublicIpAddresses;
return this;
}
public Builder replicationInstancePublicIpAddresses(String... replicationInstancePublicIpAddresses) {
return replicationInstancePublicIpAddresses(List.of(replicationInstancePublicIpAddresses));
}
@CustomType.Setter
public Builder replicationInstanceStatus(@Nullable String replicationInstanceStatus) {
this.replicationInstanceStatus = replicationInstanceStatus;
return this;
}
@CustomType.Setter
public Builder replicationSubnetGroup(@Nullable ReplicationSubnetGroupResponse replicationSubnetGroup) {
this.replicationSubnetGroup = replicationSubnetGroup;
return this;
}
@CustomType.Setter
public Builder secondaryAvailabilityZone(@Nullable String secondaryAvailabilityZone) {
this.secondaryAvailabilityZone = secondaryAvailabilityZone;
return this;
}
@CustomType.Setter
public Builder vpcSecurityGroups(@Nullable List vpcSecurityGroups) {
this.vpcSecurityGroups = vpcSecurityGroups;
return this;
}
public Builder vpcSecurityGroups(VpcSecurityGroupMembershipResponse... vpcSecurityGroups) {
return vpcSecurityGroups(List.of(vpcSecurityGroups));
}
public AwsDatabaseMigrationServiceReplicationInstancePropertiesResponse build() {
final var _resultValue = new AwsDatabaseMigrationServiceReplicationInstancePropertiesResponse();
_resultValue.allocatedStorage = allocatedStorage;
_resultValue.autoMinorVersionUpgrade = autoMinorVersionUpgrade;
_resultValue.availabilityZone = availabilityZone;
_resultValue.dnsNameServers = dnsNameServers;
_resultValue.engineVersion = engineVersion;
_resultValue.freeUntil = freeUntil;
_resultValue.instanceCreateTime = instanceCreateTime;
_resultValue.kmsKeyId = kmsKeyId;
_resultValue.multiAZ = multiAZ;
_resultValue.networkType = networkType;
_resultValue.pendingModifiedValues = pendingModifiedValues;
_resultValue.preferredMaintenanceWindow = preferredMaintenanceWindow;
_resultValue.publiclyAccessible = publiclyAccessible;
_resultValue.replicationInstanceArn = replicationInstanceArn;
_resultValue.replicationInstanceClass = replicationInstanceClass;
_resultValue.replicationInstanceIdentifier = replicationInstanceIdentifier;
_resultValue.replicationInstanceIpv6Addresses = replicationInstanceIpv6Addresses;
_resultValue.replicationInstancePrivateIpAddress = replicationInstancePrivateIpAddress;
_resultValue.replicationInstancePrivateIpAddresses = replicationInstancePrivateIpAddresses;
_resultValue.replicationInstancePublicIpAddress = replicationInstancePublicIpAddress;
_resultValue.replicationInstancePublicIpAddresses = replicationInstancePublicIpAddresses;
_resultValue.replicationInstanceStatus = replicationInstanceStatus;
_resultValue.replicationSubnetGroup = replicationSubnetGroup;
_resultValue.secondaryAvailabilityZone = secondaryAvailabilityZone;
_resultValue.vpcSecurityGroups = vpcSecurityGroups;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy