All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awssdk.services.rds.model.CreateDbInstanceRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon RDS module holds the client classes that are used for communicating with Amazon Relational Database Service

There is a newer version: 2.29.15
Show newest version
/*
 * Copyright 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 software.amazon.awssdk.services.rds.model;

import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration;
import software.amazon.awssdk.core.SdkField;
import software.amazon.awssdk.core.SdkPojo;
import software.amazon.awssdk.core.protocol.MarshallLocation;
import software.amazon.awssdk.core.protocol.MarshallingType;
import software.amazon.awssdk.core.traits.ListTrait;
import software.amazon.awssdk.core.traits.LocationTrait;
import software.amazon.awssdk.core.util.DefaultSdkAutoConstructList;
import software.amazon.awssdk.core.util.SdkAutoConstructList;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;

/**
 * 

*/ @Generated("software.amazon.awssdk:codegen") public final class CreateDbInstanceRequest extends RdsRequest implements ToCopyableBuilder { private static final SdkField DB_NAME_FIELD = SdkField. builder(MarshallingType.STRING).memberName("DBName") .getter(getter(CreateDbInstanceRequest::dbName)).setter(setter(Builder::dbName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBName").build()).build(); private static final SdkField DB_INSTANCE_IDENTIFIER_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBInstanceIdentifier").getter(getter(CreateDbInstanceRequest::dbInstanceIdentifier)) .setter(setter(Builder::dbInstanceIdentifier)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBInstanceIdentifier").build()) .build(); private static final SdkField ALLOCATED_STORAGE_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("AllocatedStorage").getter(getter(CreateDbInstanceRequest::allocatedStorage)) .setter(setter(Builder::allocatedStorage)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AllocatedStorage").build()).build(); private static final SdkField DB_INSTANCE_CLASS_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBInstanceClass").getter(getter(CreateDbInstanceRequest::dbInstanceClass)) .setter(setter(Builder::dbInstanceClass)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBInstanceClass").build()).build(); private static final SdkField ENGINE_FIELD = SdkField. builder(MarshallingType.STRING).memberName("Engine") .getter(getter(CreateDbInstanceRequest::engine)).setter(setter(Builder::engine)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Engine").build()).build(); private static final SdkField MASTER_USERNAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("MasterUsername").getter(getter(CreateDbInstanceRequest::masterUsername)) .setter(setter(Builder::masterUsername)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MasterUsername").build()).build(); private static final SdkField MASTER_USER_PASSWORD_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("MasterUserPassword").getter(getter(CreateDbInstanceRequest::masterUserPassword)) .setter(setter(Builder::masterUserPassword)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MasterUserPassword").build()) .build(); private static final SdkField> DB_SECURITY_GROUPS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("DBSecurityGroups") .getter(getter(CreateDbInstanceRequest::dbSecurityGroups)) .setter(setter(Builder::dbSecurityGroups)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBSecurityGroups").build(), ListTrait .builder() .memberLocationName("DBSecurityGroupName") .memberFieldInfo( SdkField. builder(MarshallingType.STRING) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("DBSecurityGroupName").build()).build()).build()).build(); private static final SdkField> VPC_SECURITY_GROUP_IDS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("VpcSecurityGroupIds") .getter(getter(CreateDbInstanceRequest::vpcSecurityGroupIds)) .setter(setter(Builder::vpcSecurityGroupIds)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("VpcSecurityGroupIds").build(), ListTrait .builder() .memberLocationName("VpcSecurityGroupId") .memberFieldInfo( SdkField. builder(MarshallingType.STRING) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("VpcSecurityGroupId").build()).build()).build()).build(); private static final SdkField AVAILABILITY_ZONE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("AvailabilityZone").getter(getter(CreateDbInstanceRequest::availabilityZone)) .setter(setter(Builder::availabilityZone)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AvailabilityZone").build()).build(); private static final SdkField DB_SUBNET_GROUP_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBSubnetGroupName").getter(getter(CreateDbInstanceRequest::dbSubnetGroupName)) .setter(setter(Builder::dbSubnetGroupName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBSubnetGroupName").build()).build(); private static final SdkField PREFERRED_MAINTENANCE_WINDOW_FIELD = SdkField . builder(MarshallingType.STRING) .memberName("PreferredMaintenanceWindow") .getter(getter(CreateDbInstanceRequest::preferredMaintenanceWindow)) .setter(setter(Builder::preferredMaintenanceWindow)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PreferredMaintenanceWindow").build()) .build(); private static final SdkField DB_PARAMETER_GROUP_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBParameterGroupName").getter(getter(CreateDbInstanceRequest::dbParameterGroupName)) .setter(setter(Builder::dbParameterGroupName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBParameterGroupName").build()) .build(); private static final SdkField BACKUP_RETENTION_PERIOD_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("BackupRetentionPeriod").getter(getter(CreateDbInstanceRequest::backupRetentionPeriod)) .setter(setter(Builder::backupRetentionPeriod)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("BackupRetentionPeriod").build()) .build(); private static final SdkField PREFERRED_BACKUP_WINDOW_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("PreferredBackupWindow").getter(getter(CreateDbInstanceRequest::preferredBackupWindow)) .setter(setter(Builder::preferredBackupWindow)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PreferredBackupWindow").build()) .build(); private static final SdkField PORT_FIELD = SdkField. builder(MarshallingType.INTEGER).memberName("Port") .getter(getter(CreateDbInstanceRequest::port)).setter(setter(Builder::port)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Port").build()).build(); private static final SdkField MULTI_AZ_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("MultiAZ").getter(getter(CreateDbInstanceRequest::multiAZ)).setter(setter(Builder::multiAZ)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MultiAZ").build()).build(); private static final SdkField ENGINE_VERSION_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("EngineVersion").getter(getter(CreateDbInstanceRequest::engineVersion)) .setter(setter(Builder::engineVersion)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EngineVersion").build()).build(); private static final SdkField AUTO_MINOR_VERSION_UPGRADE_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("AutoMinorVersionUpgrade").getter(getter(CreateDbInstanceRequest::autoMinorVersionUpgrade)) .setter(setter(Builder::autoMinorVersionUpgrade)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AutoMinorVersionUpgrade").build()) .build(); private static final SdkField LICENSE_MODEL_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("LicenseModel").getter(getter(CreateDbInstanceRequest::licenseModel)) .setter(setter(Builder::licenseModel)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("LicenseModel").build()).build(); private static final SdkField IOPS_FIELD = SdkField. builder(MarshallingType.INTEGER).memberName("Iops") .getter(getter(CreateDbInstanceRequest::iops)).setter(setter(Builder::iops)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Iops").build()).build(); private static final SdkField OPTION_GROUP_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("OptionGroupName").getter(getter(CreateDbInstanceRequest::optionGroupName)) .setter(setter(Builder::optionGroupName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("OptionGroupName").build()).build(); private static final SdkField CHARACTER_SET_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("CharacterSetName").getter(getter(CreateDbInstanceRequest::characterSetName)) .setter(setter(Builder::characterSetName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CharacterSetName").build()).build(); private static final SdkField NCHAR_CHARACTER_SET_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("NcharCharacterSetName").getter(getter(CreateDbInstanceRequest::ncharCharacterSetName)) .setter(setter(Builder::ncharCharacterSetName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("NcharCharacterSetName").build()) .build(); private static final SdkField PUBLICLY_ACCESSIBLE_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("PubliclyAccessible").getter(getter(CreateDbInstanceRequest::publiclyAccessible)) .setter(setter(Builder::publiclyAccessible)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PubliclyAccessible").build()) .build(); private static final SdkField> TAGS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("Tags") .getter(getter(CreateDbInstanceRequest::tags)) .setter(setter(Builder::tags)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Tags").build(), ListTrait .builder() .memberLocationName("Tag") .memberFieldInfo( SdkField. builder(MarshallingType.SDK_POJO) .constructor(Tag::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("Tag").build()).build()).build()).build(); private static final SdkField DB_CLUSTER_IDENTIFIER_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBClusterIdentifier").getter(getter(CreateDbInstanceRequest::dbClusterIdentifier)) .setter(setter(Builder::dbClusterIdentifier)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterIdentifier").build()) .build(); private static final SdkField STORAGE_TYPE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("StorageType").getter(getter(CreateDbInstanceRequest::storageType)).setter(setter(Builder::storageType)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("StorageType").build()).build(); private static final SdkField TDE_CREDENTIAL_ARN_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("TdeCredentialArn").getter(getter(CreateDbInstanceRequest::tdeCredentialArn)) .setter(setter(Builder::tdeCredentialArn)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("TdeCredentialArn").build()).build(); private static final SdkField TDE_CREDENTIAL_PASSWORD_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("TdeCredentialPassword").getter(getter(CreateDbInstanceRequest::tdeCredentialPassword)) .setter(setter(Builder::tdeCredentialPassword)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("TdeCredentialPassword").build()) .build(); private static final SdkField STORAGE_ENCRYPTED_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("StorageEncrypted").getter(getter(CreateDbInstanceRequest::storageEncrypted)) .setter(setter(Builder::storageEncrypted)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("StorageEncrypted").build()).build(); private static final SdkField KMS_KEY_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("KmsKeyId").getter(getter(CreateDbInstanceRequest::kmsKeyId)).setter(setter(Builder::kmsKeyId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("KmsKeyId").build()).build(); private static final SdkField DOMAIN_FIELD = SdkField. builder(MarshallingType.STRING).memberName("Domain") .getter(getter(CreateDbInstanceRequest::domain)).setter(setter(Builder::domain)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Domain").build()).build(); private static final SdkField DOMAIN_FQDN_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DomainFqdn").getter(getter(CreateDbInstanceRequest::domainFqdn)).setter(setter(Builder::domainFqdn)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainFqdn").build()).build(); private static final SdkField DOMAIN_OU_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DomainOu").getter(getter(CreateDbInstanceRequest::domainOu)).setter(setter(Builder::domainOu)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainOu").build()).build(); private static final SdkField DOMAIN_AUTH_SECRET_ARN_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DomainAuthSecretArn").getter(getter(CreateDbInstanceRequest::domainAuthSecretArn)) .setter(setter(Builder::domainAuthSecretArn)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainAuthSecretArn").build()) .build(); private static final SdkField> DOMAIN_DNS_IPS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("DomainDnsIps") .getter(getter(CreateDbInstanceRequest::domainDnsIps)) .setter(setter(Builder::domainDnsIps)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainDnsIps").build(), ListTrait .builder() .memberLocationName(null) .memberFieldInfo( SdkField. builder(MarshallingType.STRING) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("member").build()).build()).build()).build(); private static final SdkField COPY_TAGS_TO_SNAPSHOT_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("CopyTagsToSnapshot").getter(getter(CreateDbInstanceRequest::copyTagsToSnapshot)) .setter(setter(Builder::copyTagsToSnapshot)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CopyTagsToSnapshot").build()) .build(); private static final SdkField MONITORING_INTERVAL_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("MonitoringInterval").getter(getter(CreateDbInstanceRequest::monitoringInterval)) .setter(setter(Builder::monitoringInterval)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MonitoringInterval").build()) .build(); private static final SdkField MONITORING_ROLE_ARN_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("MonitoringRoleArn").getter(getter(CreateDbInstanceRequest::monitoringRoleArn)) .setter(setter(Builder::monitoringRoleArn)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MonitoringRoleArn").build()).build(); private static final SdkField DOMAIN_IAM_ROLE_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DomainIAMRoleName").getter(getter(CreateDbInstanceRequest::domainIAMRoleName)) .setter(setter(Builder::domainIAMRoleName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainIAMRoleName").build()).build(); private static final SdkField PROMOTION_TIER_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("PromotionTier").getter(getter(CreateDbInstanceRequest::promotionTier)) .setter(setter(Builder::promotionTier)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PromotionTier").build()).build(); private static final SdkField TIMEZONE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("Timezone").getter(getter(CreateDbInstanceRequest::timezone)).setter(setter(Builder::timezone)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Timezone").build()).build(); private static final SdkField ENABLE_IAM_DATABASE_AUTHENTICATION_FIELD = SdkField . builder(MarshallingType.BOOLEAN) .memberName("EnableIAMDatabaseAuthentication") .getter(getter(CreateDbInstanceRequest::enableIAMDatabaseAuthentication)) .setter(setter(Builder::enableIAMDatabaseAuthentication)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EnableIAMDatabaseAuthentication") .build()).build(); private static final SdkField ENABLE_PERFORMANCE_INSIGHTS_FIELD = SdkField . builder(MarshallingType.BOOLEAN).memberName("EnablePerformanceInsights") .getter(getter(CreateDbInstanceRequest::enablePerformanceInsights)) .setter(setter(Builder::enablePerformanceInsights)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EnablePerformanceInsights").build()) .build(); private static final SdkField PERFORMANCE_INSIGHTS_KMS_KEY_ID_FIELD = SdkField . builder(MarshallingType.STRING) .memberName("PerformanceInsightsKMSKeyId") .getter(getter(CreateDbInstanceRequest::performanceInsightsKMSKeyId)) .setter(setter(Builder::performanceInsightsKMSKeyId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PerformanceInsightsKMSKeyId") .build()).build(); private static final SdkField PERFORMANCE_INSIGHTS_RETENTION_PERIOD_FIELD = SdkField . builder(MarshallingType.INTEGER) .memberName("PerformanceInsightsRetentionPeriod") .getter(getter(CreateDbInstanceRequest::performanceInsightsRetentionPeriod)) .setter(setter(Builder::performanceInsightsRetentionPeriod)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PerformanceInsightsRetentionPeriod") .build()).build(); private static final SdkField> ENABLE_CLOUDWATCH_LOGS_EXPORTS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("EnableCloudwatchLogsExports") .getter(getter(CreateDbInstanceRequest::enableCloudwatchLogsExports)) .setter(setter(Builder::enableCloudwatchLogsExports)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EnableCloudwatchLogsExports") .build(), ListTrait .builder() .memberLocationName(null) .memberFieldInfo( SdkField. builder(MarshallingType.STRING) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("member").build()).build()).build()).build(); private static final SdkField> PROCESSOR_FEATURES_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("ProcessorFeatures") .getter(getter(CreateDbInstanceRequest::processorFeatures)) .setter(setter(Builder::processorFeatures)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ProcessorFeatures").build(), ListTrait .builder() .memberLocationName("ProcessorFeature") .memberFieldInfo( SdkField. builder(MarshallingType.SDK_POJO) .constructor(ProcessorFeature::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("ProcessorFeature").build()).build()).build()).build(); private static final SdkField DELETION_PROTECTION_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("DeletionProtection").getter(getter(CreateDbInstanceRequest::deletionProtection)) .setter(setter(Builder::deletionProtection)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DeletionProtection").build()) .build(); private static final SdkField MAX_ALLOCATED_STORAGE_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("MaxAllocatedStorage").getter(getter(CreateDbInstanceRequest::maxAllocatedStorage)) .setter(setter(Builder::maxAllocatedStorage)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MaxAllocatedStorage").build()) .build(); private static final SdkField ENABLE_CUSTOMER_OWNED_IP_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("EnableCustomerOwnedIp").getter(getter(CreateDbInstanceRequest::enableCustomerOwnedIp)) .setter(setter(Builder::enableCustomerOwnedIp)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EnableCustomerOwnedIp").build()) .build(); private static final SdkField CUSTOM_IAM_INSTANCE_PROFILE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("CustomIamInstanceProfile").getter(getter(CreateDbInstanceRequest::customIamInstanceProfile)) .setter(setter(Builder::customIamInstanceProfile)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CustomIamInstanceProfile").build()) .build(); private static final SdkField BACKUP_TARGET_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("BackupTarget").getter(getter(CreateDbInstanceRequest::backupTarget)) .setter(setter(Builder::backupTarget)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("BackupTarget").build()).build(); private static final SdkField NETWORK_TYPE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("NetworkType").getter(getter(CreateDbInstanceRequest::networkType)).setter(setter(Builder::networkType)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("NetworkType").build()).build(); private static final SdkField STORAGE_THROUGHPUT_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("StorageThroughput").getter(getter(CreateDbInstanceRequest::storageThroughput)) .setter(setter(Builder::storageThroughput)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("StorageThroughput").build()).build(); private static final SdkField MANAGE_MASTER_USER_PASSWORD_FIELD = SdkField . builder(MarshallingType.BOOLEAN).memberName("ManageMasterUserPassword") .getter(getter(CreateDbInstanceRequest::manageMasterUserPassword)).setter(setter(Builder::manageMasterUserPassword)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ManageMasterUserPassword").build()) .build(); private static final SdkField MASTER_USER_SECRET_KMS_KEY_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("MasterUserSecretKmsKeyId").getter(getter(CreateDbInstanceRequest::masterUserSecretKmsKeyId)) .setter(setter(Builder::masterUserSecretKmsKeyId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MasterUserSecretKmsKeyId").build()) .build(); private static final SdkField CA_CERTIFICATE_IDENTIFIER_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("CACertificateIdentifier").getter(getter(CreateDbInstanceRequest::caCertificateIdentifier)) .setter(setter(Builder::caCertificateIdentifier)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CACertificateIdentifier").build()) .build(); private static final SdkField DB_SYSTEM_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBSystemId").getter(getter(CreateDbInstanceRequest::dbSystemId)).setter(setter(Builder::dbSystemId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBSystemId").build()).build(); private static final SdkField DEDICATED_LOG_VOLUME_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("DedicatedLogVolume").getter(getter(CreateDbInstanceRequest::dedicatedLogVolume)) .setter(setter(Builder::dedicatedLogVolume)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DedicatedLogVolume").build()) .build(); private static final SdkField MULTI_TENANT_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("MultiTenant").getter(getter(CreateDbInstanceRequest::multiTenant)).setter(setter(Builder::multiTenant)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MultiTenant").build()).build(); private static final SdkField ENGINE_LIFECYCLE_SUPPORT_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("EngineLifecycleSupport").getter(getter(CreateDbInstanceRequest::engineLifecycleSupport)) .setter(setter(Builder::engineLifecycleSupport)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EngineLifecycleSupport").build()) .build(); private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(DB_NAME_FIELD, DB_INSTANCE_IDENTIFIER_FIELD, ALLOCATED_STORAGE_FIELD, DB_INSTANCE_CLASS_FIELD, ENGINE_FIELD, MASTER_USERNAME_FIELD, MASTER_USER_PASSWORD_FIELD, DB_SECURITY_GROUPS_FIELD, VPC_SECURITY_GROUP_IDS_FIELD, AVAILABILITY_ZONE_FIELD, DB_SUBNET_GROUP_NAME_FIELD, PREFERRED_MAINTENANCE_WINDOW_FIELD, DB_PARAMETER_GROUP_NAME_FIELD, BACKUP_RETENTION_PERIOD_FIELD, PREFERRED_BACKUP_WINDOW_FIELD, PORT_FIELD, MULTI_AZ_FIELD, ENGINE_VERSION_FIELD, AUTO_MINOR_VERSION_UPGRADE_FIELD, LICENSE_MODEL_FIELD, IOPS_FIELD, OPTION_GROUP_NAME_FIELD, CHARACTER_SET_NAME_FIELD, NCHAR_CHARACTER_SET_NAME_FIELD, PUBLICLY_ACCESSIBLE_FIELD, TAGS_FIELD, DB_CLUSTER_IDENTIFIER_FIELD, STORAGE_TYPE_FIELD, TDE_CREDENTIAL_ARN_FIELD, TDE_CREDENTIAL_PASSWORD_FIELD, STORAGE_ENCRYPTED_FIELD, KMS_KEY_ID_FIELD, DOMAIN_FIELD, DOMAIN_FQDN_FIELD, DOMAIN_OU_FIELD, DOMAIN_AUTH_SECRET_ARN_FIELD, DOMAIN_DNS_IPS_FIELD, COPY_TAGS_TO_SNAPSHOT_FIELD, MONITORING_INTERVAL_FIELD, MONITORING_ROLE_ARN_FIELD, DOMAIN_IAM_ROLE_NAME_FIELD, PROMOTION_TIER_FIELD, TIMEZONE_FIELD, ENABLE_IAM_DATABASE_AUTHENTICATION_FIELD, ENABLE_PERFORMANCE_INSIGHTS_FIELD, PERFORMANCE_INSIGHTS_KMS_KEY_ID_FIELD, PERFORMANCE_INSIGHTS_RETENTION_PERIOD_FIELD, ENABLE_CLOUDWATCH_LOGS_EXPORTS_FIELD, PROCESSOR_FEATURES_FIELD, DELETION_PROTECTION_FIELD, MAX_ALLOCATED_STORAGE_FIELD, ENABLE_CUSTOMER_OWNED_IP_FIELD, CUSTOM_IAM_INSTANCE_PROFILE_FIELD, BACKUP_TARGET_FIELD, NETWORK_TYPE_FIELD, STORAGE_THROUGHPUT_FIELD, MANAGE_MASTER_USER_PASSWORD_FIELD, MASTER_USER_SECRET_KMS_KEY_ID_FIELD, CA_CERTIFICATE_IDENTIFIER_FIELD, DB_SYSTEM_ID_FIELD, DEDICATED_LOG_VOLUME_FIELD, MULTI_TENANT_FIELD, ENGINE_LIFECYCLE_SUPPORT_FIELD)); private final String dbName; private final String dbInstanceIdentifier; private final Integer allocatedStorage; private final String dbInstanceClass; private final String engine; private final String masterUsername; private final String masterUserPassword; private final List dbSecurityGroups; private final List vpcSecurityGroupIds; private final String availabilityZone; private final String dbSubnetGroupName; private final String preferredMaintenanceWindow; private final String dbParameterGroupName; private final Integer backupRetentionPeriod; private final String preferredBackupWindow; private final Integer port; private final Boolean multiAZ; private final String engineVersion; private final Boolean autoMinorVersionUpgrade; private final String licenseModel; private final Integer iops; private final String optionGroupName; private final String characterSetName; private final String ncharCharacterSetName; private final Boolean publiclyAccessible; private final List tags; private final String dbClusterIdentifier; private final String storageType; private final String tdeCredentialArn; private final String tdeCredentialPassword; private final Boolean storageEncrypted; private final String kmsKeyId; private final String domain; private final String domainFqdn; private final String domainOu; private final String domainAuthSecretArn; private final List domainDnsIps; private final Boolean copyTagsToSnapshot; private final Integer monitoringInterval; private final String monitoringRoleArn; private final String domainIAMRoleName; private final Integer promotionTier; private final String timezone; private final Boolean enableIAMDatabaseAuthentication; private final Boolean enablePerformanceInsights; private final String performanceInsightsKMSKeyId; private final Integer performanceInsightsRetentionPeriod; private final List enableCloudwatchLogsExports; private final List processorFeatures; private final Boolean deletionProtection; private final Integer maxAllocatedStorage; private final Boolean enableCustomerOwnedIp; private final String customIamInstanceProfile; private final String backupTarget; private final String networkType; private final Integer storageThroughput; private final Boolean manageMasterUserPassword; private final String masterUserSecretKmsKeyId; private final String caCertificateIdentifier; private final String dbSystemId; private final Boolean dedicatedLogVolume; private final Boolean multiTenant; private final String engineLifecycleSupport; private CreateDbInstanceRequest(BuilderImpl builder) { super(builder); this.dbName = builder.dbName; this.dbInstanceIdentifier = builder.dbInstanceIdentifier; this.allocatedStorage = builder.allocatedStorage; this.dbInstanceClass = builder.dbInstanceClass; this.engine = builder.engine; this.masterUsername = builder.masterUsername; this.masterUserPassword = builder.masterUserPassword; this.dbSecurityGroups = builder.dbSecurityGroups; this.vpcSecurityGroupIds = builder.vpcSecurityGroupIds; this.availabilityZone = builder.availabilityZone; this.dbSubnetGroupName = builder.dbSubnetGroupName; this.preferredMaintenanceWindow = builder.preferredMaintenanceWindow; this.dbParameterGroupName = builder.dbParameterGroupName; this.backupRetentionPeriod = builder.backupRetentionPeriod; this.preferredBackupWindow = builder.preferredBackupWindow; this.port = builder.port; this.multiAZ = builder.multiAZ; this.engineVersion = builder.engineVersion; this.autoMinorVersionUpgrade = builder.autoMinorVersionUpgrade; this.licenseModel = builder.licenseModel; this.iops = builder.iops; this.optionGroupName = builder.optionGroupName; this.characterSetName = builder.characterSetName; this.ncharCharacterSetName = builder.ncharCharacterSetName; this.publiclyAccessible = builder.publiclyAccessible; this.tags = builder.tags; this.dbClusterIdentifier = builder.dbClusterIdentifier; this.storageType = builder.storageType; this.tdeCredentialArn = builder.tdeCredentialArn; this.tdeCredentialPassword = builder.tdeCredentialPassword; this.storageEncrypted = builder.storageEncrypted; this.kmsKeyId = builder.kmsKeyId; this.domain = builder.domain; this.domainFqdn = builder.domainFqdn; this.domainOu = builder.domainOu; this.domainAuthSecretArn = builder.domainAuthSecretArn; this.domainDnsIps = builder.domainDnsIps; this.copyTagsToSnapshot = builder.copyTagsToSnapshot; this.monitoringInterval = builder.monitoringInterval; this.monitoringRoleArn = builder.monitoringRoleArn; this.domainIAMRoleName = builder.domainIAMRoleName; this.promotionTier = builder.promotionTier; this.timezone = builder.timezone; this.enableIAMDatabaseAuthentication = builder.enableIAMDatabaseAuthentication; this.enablePerformanceInsights = builder.enablePerformanceInsights; this.performanceInsightsKMSKeyId = builder.performanceInsightsKMSKeyId; this.performanceInsightsRetentionPeriod = builder.performanceInsightsRetentionPeriod; this.enableCloudwatchLogsExports = builder.enableCloudwatchLogsExports; this.processorFeatures = builder.processorFeatures; this.deletionProtection = builder.deletionProtection; this.maxAllocatedStorage = builder.maxAllocatedStorage; this.enableCustomerOwnedIp = builder.enableCustomerOwnedIp; this.customIamInstanceProfile = builder.customIamInstanceProfile; this.backupTarget = builder.backupTarget; this.networkType = builder.networkType; this.storageThroughput = builder.storageThroughput; this.manageMasterUserPassword = builder.manageMasterUserPassword; this.masterUserSecretKmsKeyId = builder.masterUserSecretKmsKeyId; this.caCertificateIdentifier = builder.caCertificateIdentifier; this.dbSystemId = builder.dbSystemId; this.dedicatedLogVolume = builder.dedicatedLogVolume; this.multiTenant = builder.multiTenant; this.engineLifecycleSupport = builder.engineLifecycleSupport; } /** *

* The meaning of this parameter differs according to the database engine you use. *

*
*
Amazon Aurora MySQL
*
*

* The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If * this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 alphanumeric characters. *

    *
  • *
  • *

    * Can't be a word reserved by the database engine. *

    *
  • *
*
*
Amazon Aurora PostgreSQL
*
*

* The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is created. A * database named postgres is always created. If this parameter is specified, an additional database * with this name is created. *

*

* Constraints: *

*
    *
  • *

    * It must contain 1 to 63 alphanumeric characters. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0 to 9). *

    *
  • *
  • *

    * Can't be a word reserved by the database engine. *

    *
  • *
*
*
Amazon RDS Custom for Oracle
*
*

* The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default value * is ORCL for non-CDBs and RDSCDB for CDBs. *

*

* Default: ORCL *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 8 alphanumeric characters. *

    *
  • *
  • *

    * Must contain a letter. *

    *
  • *
  • *

    * Can't be a word reserved by the database engine. *

    *
  • *
*
*
Amazon RDS Custom for SQL Server
*
*

* Not applicable. Must be null. *

*
*
RDS for Db2
*
*

* The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. In some cases, we recommend that you don't add a database name. For more * information, see Additional considerations in the Amazon RDS User Guide. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 letters or numbers. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for MariaDB
*
*

* The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 letters or numbers. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for MySQL
*
*

* The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 letters or numbers. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for Oracle
*
*

* The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is * ORCL. You can't specify the string null, or any other reserved word, for * DBName. *

*

* Default: ORCL *

*

* Constraints: *

*
    *
  • *

    * Can't be longer than 8 characters. *

    *
  • *
*
*
RDS for PostgreSQL
*
*

* The name of the database to create when the DB instance is created. A database named postgres is * always created. If this parameter is specified, an additional database with this name is created. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 63 letters, numbers, or underscores. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for SQL Server
*
*

* Not applicable. Must be null. *

*
*
* * @return The meaning of this parameter differs according to the database engine you use.

*
*
Amazon Aurora MySQL
*
*

* The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is * created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the * DB cluster. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 alphanumeric characters. *

    *
  • *
  • *

    * Can't be a word reserved by the database engine. *

    *
  • *
*
*
Amazon Aurora PostgreSQL
*
*

* The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is * created. A database named postgres is always created. If this parameter is specified, an * additional database with this name is created. *

*

* Constraints: *

*
    *
  • *

    * It must contain 1 to 63 alphanumeric characters. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0 to 9). *

    *
  • *
  • *

    * Can't be a word reserved by the database engine. *

    *
  • *
*
*
Amazon RDS Custom for Oracle
*
*

* The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the * default value is ORCL for non-CDBs and RDSCDB for CDBs. *

*

* Default: ORCL *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 8 alphanumeric characters. *

    *
  • *
  • *

    * Must contain a letter. *

    *
  • *
  • *

    * Can't be a word reserved by the database engine. *

    *
  • *
*
*
Amazon RDS Custom for SQL Server
*
*

* Not applicable. Must be null. *

*
*
RDS for Db2
*
*

* The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. In some cases, we recommend that you don't add a database name. * For more information, see Additional considerations in the Amazon RDS User Guide. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 letters or numbers. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for MariaDB
*
*

* The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 letters or numbers. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for MySQL
*
*

* The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 64 letters or numbers. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for Oracle
*
*

* The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is * ORCL. You can't specify the string null, or any other reserved word, for * DBName. *

*

* Default: ORCL *

*

* Constraints: *

*
    *
  • *

    * Can't be longer than 8 characters. *

    *
  • *
*
*
RDS for PostgreSQL
*
*

* The name of the database to create when the DB instance is created. A database named * postgres is always created. If this parameter is specified, an additional database with this * name is created. *

*

* Constraints: *

*
    *
  • *

    * Must contain 1 to 63 letters, numbers, or underscores. *

    *
  • *
  • *

    * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

    *
  • *
  • *

    * Can't be a word reserved by the specified database engine. *

    *
  • *
*
*
RDS for SQL Server
*
*

* Not applicable. Must be null. *

*
*/ public final String dbName() { return dbName; } /** *

* The identifier for this DB instance. This parameter is stored as a lowercase string. *

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Can't end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: mydbinstance *

* * @return The identifier for this DB instance. This parameter is stored as a lowercase string.

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Can't end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: mydbinstance */ public final String dbInstanceIdentifier() { return dbInstanceIdentifier; } /** *

* The amount of storage in gibibytes (GiB) to allocate for the DB instance. *

*

* This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as the amount * of data in your database increases, though you are only charged for the space that you use in an Aurora cluster * volume. *

*
*
Amazon RDS Custom
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 * for RDS Custom for SQL Server. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 for RDS * Custom for SQL Server. *

    *
  • *
*
*
RDS for Db2
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
*
*
RDS for MariaDB
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 5 to 3072. *

    *
  • *
*
*
RDS for MySQL
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 5 to 3072. *

    *
  • *
*
*
RDS for Oracle
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 10 to 3072. *

    *
  • *
*
*
RDS for PostgreSQL
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 5 to 3072. *

    *
  • *
*
*
RDS for SQL Server
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): *

    *
      *
    • *

      * Enterprise and Standard editions: Must be an integer from 20 to 16384. *

      *
    • *
    • *

      * Web and Express editions: Must be an integer from 20 to 16384. *

      *
    • *
    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): *

    *
      *
    • *

      * Enterprise and Standard editions: Must be an integer from 100 to 16384. *

      *
    • *
    • *

      * Web and Express editions: Must be an integer from 100 to 16384. *

      *
    • *
    *
  • *
  • *

    * Magnetic storage (standard): *

    *
      *
    • *

      * Enterprise and Standard editions: Must be an integer from 20 to 1024. *

      *
    • *
    • *

      * Web and Express editions: Must be an integer from 20 to 1024. *

      *
    • *
    *
  • *
*
*
* * @return The amount of storage in gibibytes (GiB) to allocate for the DB instance.

*

* This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as * the amount of data in your database increases, though you are only charged for the space that you use in * an Aurora cluster volume. *

*
*
Amazon RDS Custom
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 40 to 65536 for RDS Custom for Oracle, * 16384 for RDS Custom for SQL Server. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 * for RDS Custom for SQL Server. *

    *
  • *
*
*
RDS for Db2
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
*
*
RDS for MariaDB
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 5 to 3072. *

    *
  • *
*
*
RDS for MySQL
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 5 to 3072. *

    *
  • *
*
*
RDS for Oracle
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 10 to 3072. *

    *
  • *
*
*
RDS for PostgreSQL
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

    *
  • *
  • *

    * Magnetic storage (standard): Must be an integer from 5 to 3072. *

    *
  • *
*
*
RDS for SQL Server
*
*

* Constraints to the amount of storage for each storage type are the following: *

*
    *
  • *

    * General Purpose (SSD) storage (gp2, gp3): *

    *
      *
    • *

      * Enterprise and Standard editions: Must be an integer from 20 to 16384. *

      *
    • *
    • *

      * Web and Express editions: Must be an integer from 20 to 16384. *

      *
    • *
    *
  • *
  • *

    * Provisioned IOPS storage (io1, io2): *

    *
      *
    • *

      * Enterprise and Standard editions: Must be an integer from 100 to 16384. *

      *
    • *
    • *

      * Web and Express editions: Must be an integer from 100 to 16384. *

      *
    • *
    *
  • *
  • *

    * Magnetic storage (standard): *

    *
      *
    • *

      * Enterprise and Standard editions: Must be an integer from 20 to 1024. *

      *
    • *
    • *

      * Web and Express editions: Must be an integer from 20 to 1024. *

      *
    • *
    *
  • *
*
*/ public final Integer allocatedStorage() { return allocatedStorage; } /** *

* The compute and memory capacity of the DB instance, for example db.m5.large. Not all DB instance * classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB * instance classes, and availability for your engine, see DB instance * classes in the Amazon RDS User Guide or Aurora DB * instance classes in the Amazon Aurora User Guide. *

* * @return The compute and memory capacity of the DB instance, for example db.m5.large. Not all DB * instance classes are available in all Amazon Web Services Regions, or for all database engines. For the * full list of DB instance classes, and availability for your engine, see DB instance * classes in the Amazon RDS User Guide or Aurora * DB instance classes in the Amazon Aurora User Guide. */ public final String dbInstanceClass() { return dbInstanceClass; } /** *

* The database engine to use for this DB instance. *

*

* Not every database engine is available in every Amazon Web Services Region. *

*

* Valid Values: *

*
    *
  • *

    * aurora-mysql (for Aurora MySQL DB instances) *

    *
  • *
  • *

    * aurora-postgresql (for Aurora PostgreSQL DB instances) *

    *
  • *
  • *

    * custom-oracle-ee (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-oracle-ee-cdb (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-oracle-se2 (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-oracle-se2-cdb (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-sqlserver-ee (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * custom-sqlserver-se (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * custom-sqlserver-web (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * custom-sqlserver-dev (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * db2-ae *

    *
  • *
  • *

    * db2-se *

    *
  • *
  • *

    * mariadb *

    *
  • *
  • *

    * mysql *

    *
  • *
  • *

    * oracle-ee *

    *
  • *
  • *

    * oracle-ee-cdb *

    *
  • *
  • *

    * oracle-se2 *

    *
  • *
  • *

    * oracle-se2-cdb *

    *
  • *
  • *

    * postgres *

    *
  • *
  • *

    * sqlserver-ee *

    *
  • *
  • *

    * sqlserver-se *

    *
  • *
  • *

    * sqlserver-ex *

    *
  • *
  • *

    * sqlserver-web *

    *
  • *
* * @return The database engine to use for this DB instance.

*

* Not every database engine is available in every Amazon Web Services Region. *

*

* Valid Values: *

*
    *
  • *

    * aurora-mysql (for Aurora MySQL DB instances) *

    *
  • *
  • *

    * aurora-postgresql (for Aurora PostgreSQL DB instances) *

    *
  • *
  • *

    * custom-oracle-ee (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-oracle-ee-cdb (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-oracle-se2 (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-oracle-se2-cdb (for RDS Custom for Oracle DB instances) *

    *
  • *
  • *

    * custom-sqlserver-ee (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * custom-sqlserver-se (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * custom-sqlserver-web (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * custom-sqlserver-dev (for RDS Custom for SQL Server DB instances) *

    *
  • *
  • *

    * db2-ae *

    *
  • *
  • *

    * db2-se *

    *
  • *
  • *

    * mariadb *

    *
  • *
  • *

    * mysql *

    *
  • *
  • *

    * oracle-ee *

    *
  • *
  • *

    * oracle-ee-cdb *

    *
  • *
  • *

    * oracle-se2 *

    *
  • *
  • *

    * oracle-se2-cdb *

    *
  • *
  • *

    * postgres *

    *
  • *
  • *

    * sqlserver-ee *

    *
  • *
  • *

    * sqlserver-se *

    *
  • *
  • *

    * sqlserver-ex *

    *
  • *
  • *

    * sqlserver-web *

    *
  • */ public final String engine() { return engine; } /** *

    * The name for the master user. *

    *

    * This setting doesn't apply to Amazon Aurora DB instances. The name for the master user is managed by the DB * cluster. *

    *

    * This setting is required for RDS DB instances. *

    *

    * Constraints: *

    *
      *
    • *

      * Must be 1 to 16 letters, numbers, or underscores. *

      *
    • *
    • *

      * First character must be a letter. *

      *
    • *
    • *

      * Can't be a reserved word for the chosen database engine. *

      *
    • *
    * * @return The name for the master user.

    *

    * This setting doesn't apply to Amazon Aurora DB instances. The name for the master user is managed by the * DB cluster. *

    *

    * This setting is required for RDS DB instances. *

    *

    * Constraints: *

    *
      *
    • *

      * Must be 1 to 16 letters, numbers, or underscores. *

      *
    • *
    • *

      * First character must be a letter. *

      *
    • *
    • *

      * Can't be a reserved word for the chosen database engine. *

      *
    • */ public final String masterUsername() { return masterUsername; } /** *

      * The password for the master user. *

      *

      * This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed by the DB * cluster. *

      *

      * Constraints: *

      *
        *
      • *

        * Can't be specified if ManageMasterUserPassword is turned on. *

        *
      • *
      • *

        * Can include any printable ASCII character except "/", * """, or "@". For RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) character. *

        *
      • *
      *

      * Length Constraints: *

      *
        *
      • *

        * RDS for Db2 - Must contain from 8 to 255 characters. *

        *
      • *
      • *

        * RDS for MariaDB - Must contain from 8 to 41 characters. *

        *
      • *
      • *

        * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. *

        *
      • *
      • *

        * RDS for MySQL - Must contain from 8 to 41 characters. *

        *
      • *
      • *

        * RDS for Oracle - Must contain from 8 to 30 characters. *

        *
      • *
      • *

        * RDS for PostgreSQL - Must contain from 8 to 128 characters. *

        *
      • *
      * * @return The password for the master user.

      *

      * This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed by * the DB cluster. *

      *

      * Constraints: *

      *
        *
      • *

        * Can't be specified if ManageMasterUserPassword is turned on. *

        *
      • *
      • *

        * Can include any printable ASCII character except "/", * """, or "@". For RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) * character. *

        *
      • *
      *

      * Length Constraints: *

      *
        *
      • *

        * RDS for Db2 - Must contain from 8 to 255 characters. *

        *
      • *
      • *

        * RDS for MariaDB - Must contain from 8 to 41 characters. *

        *
      • *
      • *

        * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. *

        *
      • *
      • *

        * RDS for MySQL - Must contain from 8 to 41 characters. *

        *
      • *
      • *

        * RDS for Oracle - Must contain from 8 to 30 characters. *

        *
      • *
      • *

        * RDS for PostgreSQL - Must contain from 8 to 128 characters. *

        *
      • */ public final String masterUserPassword() { return masterUserPassword; } /** * For responses, this returns true if the service returned a value for the DBSecurityGroups property. This DOES NOT * check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the property). * This is useful because the SDK will never return a null collection or map, but you may need to differentiate * between the service returning nothing (or null) and the service returning an empty collection or map. For * requests, this returns true if a value for the property was specified in the request builder, and false if a * value was not specified. */ public final boolean hasDbSecurityGroups() { return dbSecurityGroups != null && !(dbSecurityGroups instanceof SdkAutoConstructList); } /** *

        * A list of DB security groups to associate with this DB instance. *

        *

        * This setting applies to the legacy EC2-Classic platform, which is no longer used to create new DB instances. Use * the VpcSecurityGroupIds setting instead. *

        *

        * Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

        *

        * This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasDbSecurityGroups} method. *

        * * @return A list of DB security groups to associate with this DB instance.

        *

        * This setting applies to the legacy EC2-Classic platform, which is no longer used to create new DB * instances. Use the VpcSecurityGroupIds setting instead. */ public final List dbSecurityGroups() { return dbSecurityGroups; } /** * For responses, this returns true if the service returned a value for the VpcSecurityGroupIds property. This DOES * NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the property). * This is useful because the SDK will never return a null collection or map, but you may need to differentiate * between the service returning nothing (or null) and the service returning an empty collection or map. For * requests, this returns true if a value for the property was specified in the request builder, and false if a * value was not specified. */ public final boolean hasVpcSecurityGroupIds() { return vpcSecurityGroupIds != null && !(vpcSecurityGroupIds instanceof SdkAutoConstructList); } /** *

        * A list of Amazon EC2 VPC security groups to associate with this DB instance. *

        *

        * This setting doesn't apply to Amazon Aurora DB instances. The associated list of EC2 VPC security groups is * managed by the DB cluster. *

        *

        * Default: The default EC2 VPC security group for the DB subnet group's VPC. *

        *

        * Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

        *

        * This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasVpcSecurityGroupIds} method. *

        * * @return A list of Amazon EC2 VPC security groups to associate with this DB instance.

        *

        * This setting doesn't apply to Amazon Aurora DB instances. The associated list of EC2 VPC security groups * is managed by the DB cluster. *

        *

        * Default: The default EC2 VPC security group for the DB subnet group's VPC. */ public final List vpcSecurityGroupIds() { return vpcSecurityGroupIds; } /** *

        * The Availability Zone (AZ) where the database will be created. For information on Amazon Web Services Regions and * Availability Zones, see Regions * and Availability Zones. *

        *

        * For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability Zones. * Specify one of these Availability Zones. Aurora automatically chooses an appropriate Availability Zone if you * don't specify one. *

        *

        * Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *

        *

        * Constraints: *

        *
          *
        • *

          * The AvailabilityZone parameter can't be specified if the DB instance is a Multi-AZ deployment. *

          *
        • *
        • *

          * The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint. *

          *
        • *
        *

        * Example: us-east-1d *

        * * @return The Availability Zone (AZ) where the database will be created. For information on Amazon Web Services * Regions and Availability Zones, see Regions and Availability Zones.

        *

        * For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability * Zones. Specify one of these Availability Zones. Aurora automatically chooses an appropriate Availability * Zone if you don't specify one. *

        *

        * Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *

        *

        * Constraints: *

        *
          *
        • *

          * The AvailabilityZone parameter can't be specified if the DB instance is a Multi-AZ * deployment. *

          *
        • *
        • *

          * The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint. *

          *
        • *
        *

        * Example: us-east-1d */ public final String availabilityZone() { return availabilityZone; } /** *

        * A DB subnet group to associate with this DB instance. *

        *

        * Constraints: *

        *
          *
        • *

          * Must match the name of an existing DB subnet group. *

          *
        • *
        *

        * Example: mydbsubnetgroup *

        * * @return A DB subnet group to associate with this DB instance.

        *

        * Constraints: *

        *
          *
        • *

          * Must match the name of an existing DB subnet group. *

          *
        • *
        *

        * Example: mydbsubnetgroup */ public final String dbSubnetGroupName() { return dbSubnetGroupName; } /** *

        * The time range each week during which system maintenance can occur. For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide. *

        *

        * The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services * Region, occurring on a random day of the week. *

        *

        * Constraints: *

        *
          *
        • *

          * Must be in the format ddd:hh24:mi-ddd:hh24:mi. *

          *
        • *
        • *

          * The day values must be mon | tue | wed | thu | fri | sat | sun. *

          *
        • *
        • *

          * Must be in Universal Coordinated Time (UTC). *

          *
        • *
        • *

          * Must not conflict with the preferred backup window. *

          *
        • *
        • *

          * Must be at least 30 minutes. *

          *
        • *
        * * @return The time range each week during which system maintenance can occur. For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

        *

        * The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web * Services Region, occurring on a random day of the week. *

        *

        * Constraints: *

        *
          *
        • *

          * Must be in the format ddd:hh24:mi-ddd:hh24:mi. *

          *
        • *
        • *

          * The day values must be mon | tue | wed | thu | fri | sat | sun. *

          *
        • *
        • *

          * Must be in Universal Coordinated Time (UTC). *

          *
        • *
        • *

          * Must not conflict with the preferred backup window. *

          *
        • *
        • *

          * Must be at least 30 minutes. *

          *
        • */ public final String preferredMaintenanceWindow() { return preferredMaintenanceWindow; } /** *

          * The name of the DB parameter group to associate with this DB instance. If you don't specify a value, then Amazon * RDS uses the default DB parameter group for the specified DB engine and version. *

          *

          * This setting doesn't apply to RDS Custom DB instances. *

          *

          * Constraints: *

          *
            *
          • *

            * Must be 1 to 255 letters, numbers, or hyphens. *

            *
          • *
          • *

            * The first character must be a letter. *

            *
          • *
          • *

            * Can't end with a hyphen or contain two consecutive hyphens. *

            *
          • *
          * * @return The name of the DB parameter group to associate with this DB instance. If you don't specify a value, then * Amazon RDS uses the default DB parameter group for the specified DB engine and version.

          *

          * This setting doesn't apply to RDS Custom DB instances. *

          *

          * Constraints: *

          *
            *
          • *

            * Must be 1 to 255 letters, numbers, or hyphens. *

            *
          • *
          • *

            * The first character must be a letter. *

            *
          • *
          • *

            * Can't end with a hyphen or contain two consecutive hyphens. *

            *
          • */ public final String dbParameterGroupName() { return dbParameterGroupName; } /** *

            * The number of days for which automated backups are retained. Setting this parameter to a positive number enables * backups. Setting this parameter to 0 disables automated backups. *

            *

            * This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is managed * by the DB cluster. *

            *

            * Default: 1 *

            *

            * Constraints: *

            *
              *
            • *

              * Must be a value from 0 to 35. *

              *
            • *
            • *

              * Can't be set to 0 if the DB instance is a source to read replicas. *

              *
            • *
            • *

              * Can't be set to 0 for an RDS Custom for Oracle DB instance. *

              *
            • *
            * * @return The number of days for which automated backups are retained. Setting this parameter to a positive number * enables backups. Setting this parameter to 0 disables automated backups.

            *

            * This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is * managed by the DB cluster. *

            *

            * Default: 1 *

            *

            * Constraints: *

            *
              *
            • *

              * Must be a value from 0 to 35. *

              *
            • *
            • *

              * Can't be set to 0 if the DB instance is a source to read replicas. *

              *
            • *
            • *

              * Can't be set to 0 for an RDS Custom for Oracle DB instance. *

              *
            • */ public final Integer backupRetentionPeriod() { return backupRetentionPeriod; } /** *

              * The daily time range during which automated backups are created if automated backups are enabled, using the * BackupRetentionPeriod parameter. The default is a 30-minute window selected at random from an 8-hour * block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide. *

              *

              * This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups is * managed by the DB cluster. *

              *

              * Constraints: *

              *
                *
              • *

                * Must be in the format hh24:mi-hh24:mi. *

                *
              • *
              • *

                * Must be in Universal Coordinated Time (UTC). *

                *
              • *
              • *

                * Must not conflict with the preferred maintenance window. *

                *
              • *
              • *

                * Must be at least 30 minutes. *

                *
              • *
              * * @return The daily time range during which automated backups are created if automated backups are enabled, using * the BackupRetentionPeriod parameter. The default is a 30-minute window selected at random * from an 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide.

              *

              * This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated * backups is managed by the DB cluster. *

              *

              * Constraints: *

              *
                *
              • *

                * Must be in the format hh24:mi-hh24:mi. *

                *
              • *
              • *

                * Must be in Universal Coordinated Time (UTC). *

                *
              • *
              • *

                * Must not conflict with the preferred maintenance window. *

                *
              • *
              • *

                * Must be at least 30 minutes. *

                *
              • */ public final String preferredBackupWindow() { return preferredBackupWindow; } /** *

                * The port number on which the database accepts connections. *

                *

                * This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster. *

                *

                * Valid Values: 1150-65535 *

                *

                * Default: *

                *
                  *
                • *

                  * RDS for Db2 - 50000 *

                  *
                • *
                • *

                  * RDS for MariaDB - 3306 *

                  *
                • *
                • *

                  * RDS for Microsoft SQL Server - 1433 *

                  *
                • *
                • *

                  * RDS for MySQL - 3306 *

                  *
                • *
                • *

                  * RDS for Oracle - 1521 *

                  *
                • *
                • *

                  * RDS for PostgreSQL - 5432 *

                  *
                • *
                *

                * Constraints: *

                *
                  *
                • *

                  * For RDS for Microsoft SQL Server, the value can't be 1234, 1434, 3260, * 3343, 3389, 47001, or 49152-49156. *

                  *
                • *
                * * @return The port number on which the database accepts connections.

                *

                * This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster. *

                *

                * Valid Values: 1150-65535 *

                *

                * Default: *

                *
                  *
                • *

                  * RDS for Db2 - 50000 *

                  *
                • *
                • *

                  * RDS for MariaDB - 3306 *

                  *
                • *
                • *

                  * RDS for Microsoft SQL Server - 1433 *

                  *
                • *
                • *

                  * RDS for MySQL - 3306 *

                  *
                • *
                • *

                  * RDS for Oracle - 1521 *

                  *
                • *
                • *

                  * RDS for PostgreSQL - 5432 *

                  *
                • *
                *

                * Constraints: *

                *
                  *
                • *

                  * For RDS for Microsoft SQL Server, the value can't be 1234, 1434, * 3260, 3343, 3389, 47001, or 49152-49156. *

                  *
                • */ public final Integer port() { return port; } /** *

                  * Specifies whether the DB instance is a Multi-AZ deployment. You can't set the AvailabilityZone * parameter if the DB instance is a Multi-AZ deployment. *

                  *

                  * This setting doesn't apply to the following DB instances: *

                  *
                    *
                  • *

                    * Amazon Aurora (DB instance Availability Zones (AZs) are managed by the DB cluster.) *

                    *
                  • *
                  • *

                    * RDS Custom *

                    *
                  • *
                  * * @return Specifies whether the DB instance is a Multi-AZ deployment. You can't set the * AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

                  *

                  * This setting doesn't apply to the following DB instances: *

                  *
                    *
                  • *

                    * Amazon Aurora (DB instance Availability Zones (AZs) are managed by the DB cluster.) *

                    *
                  • *
                  • *

                    * RDS Custom *

                    *
                  • */ public final Boolean multiAZ() { return multiAZ; } /** *

                    * The version number of the database engine to use. *

                    *

                    * This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine the DB * instance uses is managed by the DB cluster. *

                    *

                    * For a list of valid engine versions, use the DescribeDBEngineVersions operation. *

                    *

                    * The following are the database engines and links to information about the major and minor versions that are * available with Amazon RDS. Not every database engine is available for every Amazon Web Services Region. *

                    *
                    *
                    Amazon RDS Custom for Oracle
                    *
                    *

                    * A custom engine version (CEV) that you have previously created. This setting is required for RDS Custom for * Oracle. The CEV name has the following format: 19.customized_string. A valid CEV name is * 19.my_cev1. For more information, see * Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide. *

                    *
                    *
                    Amazon RDS Custom for SQL Server
                    *
                    *

                    * See RDS Custom for * SQL Server general requirements in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for Db2
                    *
                    *

                    * For information, see Db2 on * Amazon RDS versions in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for MariaDB
                    *
                    *

                    * For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for Microsoft SQL Server
                    *
                    *

                    * For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for MySQL
                    *
                    *

                    * For information, see MySQL on * Amazon RDS versions in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for Oracle
                    *
                    *

                    * For information, see Oracle * Database Engine release notes in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for PostgreSQL
                    *
                    *

                    * For information, see Amazon RDS * for PostgreSQL versions and extensions in the Amazon RDS User Guide. *

                    *
                    *
                    * * @return The version number of the database engine to use.

                    *

                    * This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine the * DB instance uses is managed by the DB cluster. *

                    *

                    * For a list of valid engine versions, use the DescribeDBEngineVersions operation. *

                    *

                    * The following are the database engines and links to information about the major and minor versions that * are available with Amazon RDS. Not every database engine is available for every Amazon Web Services * Region. *

                    *
                    *
                    Amazon RDS Custom for Oracle
                    *
                    *

                    * A custom engine version (CEV) that you have previously created. This setting is required for RDS Custom * for Oracle. The CEV name has the following format: 19.customized_string. A valid CEV name is * 19.my_cev1. For more information, see Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide. *

                    *
                    *
                    Amazon RDS Custom for SQL Server
                    *
                    *

                    * See RDS * Custom for SQL Server general requirements in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for Db2
                    *
                    *

                    * For information, see Db2 * on Amazon RDS versions in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for MariaDB
                    *
                    *

                    * For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for Microsoft SQL Server
                    *
                    *

                    * For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for MySQL
                    *
                    *

                    * For information, see MySQL * on Amazon RDS versions in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for Oracle
                    *
                    *

                    * For information, see Oracle Database Engine release notes in the Amazon RDS User Guide. *

                    *
                    *
                    RDS for PostgreSQL
                    *
                    *

                    * For information, see Amazon RDS for PostgreSQL versions and extensions in the Amazon RDS User Guide. *

                    *
                    */ public final String engineVersion() { return engineVersion; } /** *

                    * Specifies whether minor engine upgrades are applied automatically to the DB instance during the maintenance * window. By default, minor engine upgrades are applied automatically. *

                    *

                    * If you create an RDS Custom DB instance, you must set AutoMinorVersionUpgrade to false. *

                    * * @return Specifies whether minor engine upgrades are applied automatically to the DB instance during the * maintenance window. By default, minor engine upgrades are applied automatically.

                    *

                    * If you create an RDS Custom DB instance, you must set AutoMinorVersionUpgrade to * false. */ public final Boolean autoMinorVersionUpgrade() { return autoMinorVersionUpgrade; } /** *

                    * The license model information for this DB instance. *

                    * *

                    * License models for RDS for Db2 require additional configuration. The Bring Your Own License (BYOL) model requires * a custom parameter group and an Amazon Web Services License Manager self-managed license. The Db2 license through * Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace subscription. For more * information, see Amazon RDS * for Db2 licensing options in the Amazon RDS User Guide. *

                    *

                    * The default for RDS for Db2 is bring-your-own-license. *

                    *
                    *

                    * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                    *

                    * Valid Values: *

                    *
                      *
                    • *

                      * RDS for Db2 - bring-your-own-license | marketplace-license *

                      *
                    • *
                    • *

                      * RDS for MariaDB - general-public-license *

                      *
                    • *
                    • *

                      * RDS for Microsoft SQL Server - license-included *

                      *
                    • *
                    • *

                      * RDS for MySQL - general-public-license *

                      *
                    • *
                    • *

                      * RDS for Oracle - bring-your-own-license | license-included *

                      *
                    • *
                    • *

                      * RDS for PostgreSQL - postgresql-license *

                      *
                    • *
                    * * @return The license model information for this DB instance.

                    *

                    * License models for RDS for Db2 require additional configuration. The Bring Your Own License (BYOL) model * requires a custom parameter group and an Amazon Web Services License Manager self-managed license. The * Db2 license through Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace * subscription. For more information, see Amazon RDS for Db2 * licensing options in the Amazon RDS User Guide. *

                    *

                    * The default for RDS for Db2 is bring-your-own-license. *

                    *
                    *

                    * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                    *

                    * Valid Values: *

                    *
                      *
                    • *

                      * RDS for Db2 - bring-your-own-license | marketplace-license *

                      *
                    • *
                    • *

                      * RDS for MariaDB - general-public-license *

                      *
                    • *
                    • *

                      * RDS for Microsoft SQL Server - license-included *

                      *
                    • *
                    • *

                      * RDS for MySQL - general-public-license *

                      *
                    • *
                    • *

                      * RDS for Oracle - bring-your-own-license | license-included *

                      *
                    • *
                    • *

                      * RDS for PostgreSQL - postgresql-license *

                      *
                    • */ public final String licenseModel() { return licenseModel; } /** *

                      * The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance. * For information about valid IOPS values, see Amazon RDS DB instance * storage in the Amazon RDS User Guide. *

                      *

                      * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                      *

                      * Constraints: *

                      *
                        *
                      • *

                        * For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage * amount for the DB instance. *

                        *
                      • *
                      • *

                        * For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance. *

                        *
                      • *
                      * * @return The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB * instance. For information about valid IOPS values, see Amazon RDS DB instance * storage in the Amazon RDS User Guide.

                      *

                      * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                      *

                      * Constraints: *

                      *
                        *
                      • *

                        * For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the * storage amount for the DB instance. *

                        *
                      • *
                      • *

                        * For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance. *

                        *
                      • */ public final Integer iops() { return iops; } /** *

                        * The option group to associate the DB instance with. *

                        *

                        * Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option * group. Also, that option group can't be removed from a DB instance after it is associated with a DB instance. *

                        *

                        * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                        * * @return The option group to associate the DB instance with.

                        *

                        * Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an * option group. Also, that option group can't be removed from a DB instance after it is associated with a * DB instance. *

                        *

                        * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. */ public final String optionGroupName() { return optionGroupName; } /** *

                        * For supported engines, the character set (CharacterSet) to associate the DB instance with. *

                        *

                        * This setting doesn't apply to the following DB instances: *

                        *
                          *
                        • *

                          * Amazon Aurora - The character set is managed by the DB cluster. For more information, see * CreateDBCluster. *

                          *
                        • *
                        • *

                          * RDS Custom - However, if you need to change the character set, you can change it on the database itself. *

                          *
                        • *
                        * * @return For supported engines, the character set (CharacterSet) to associate the DB instance * with.

                        *

                        * This setting doesn't apply to the following DB instances: *

                        *
                          *
                        • *

                          * Amazon Aurora - The character set is managed by the DB cluster. For more information, see * CreateDBCluster. *

                          *
                        • *
                        • *

                          * RDS Custom - However, if you need to change the character set, you can change it on the database itself. *

                          *
                        • */ public final String characterSetName() { return characterSetName; } /** *

                          * The name of the NCHAR character set for the Oracle DB instance. *

                          *

                          * This setting doesn't apply to RDS Custom DB instances. *

                          * * @return The name of the NCHAR character set for the Oracle DB instance.

                          *

                          * This setting doesn't apply to RDS Custom DB instances. */ public final String ncharCharacterSetName() { return ncharCharacterSetName; } /** *

                          * Specifies whether the DB instance is publicly accessible. *

                          *

                          * When the DB instance is publicly accessible and you connect from outside of the DB instance's virtual private * cloud (VPC), its Domain Name System (DNS) endpoint resolves to the public IP address. When you connect from * within the same VPC as the DB instance, the endpoint resolves to the private IP address. Access to the DB * instance is ultimately controlled by the security group it uses. That public access is not permitted if the * security group assigned to the DB instance doesn't permit it. *

                          *

                          * When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a * private IP address. *

                          *

                          * Default: The default behavior varies depending on whether DBSubnetGroupName is specified. *

                          *

                          * If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, the * following applies: *

                          *
                            *
                          • *

                            * If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB instance is * private. *

                            *
                          • *
                          • *

                            * If the default VPC in the target Region has an internet gateway attached to it, the DB instance is public. *

                            *
                          • *
                          *

                          * If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the * following applies: *

                          *
                            *
                          • *

                            * If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB instance is * private. *

                            *
                          • *
                          • *

                            * If the subnets are part of a VPC that has an internet gateway attached to it, the DB instance is public. *

                            *
                          • *
                          * * @return Specifies whether the DB instance is publicly accessible.

                          *

                          * When the DB instance is publicly accessible and you connect from outside of the DB instance's virtual * private cloud (VPC), its Domain Name System (DNS) endpoint resolves to the public IP address. When you * connect from within the same VPC as the DB instance, the endpoint resolves to the private IP address. * Access to the DB instance is ultimately controlled by the security group it uses. That public access is * not permitted if the security group assigned to the DB instance doesn't permit it. *

                          *

                          * When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that * resolves to a private IP address. *

                          *

                          * Default: The default behavior varies depending on whether DBSubnetGroupName is specified. *

                          *

                          * If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, * the following applies: *

                          *
                            *
                          • *

                            * If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB instance * is private. *

                            *
                          • *
                          • *

                            * If the default VPC in the target Region has an internet gateway attached to it, the DB instance is * public. *

                            *
                          • *
                          *

                          * If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the * following applies: *

                          *
                            *
                          • *

                            * If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB instance is * private. *

                            *
                          • *
                          • *

                            * If the subnets are part of a VPC that has an internet gateway attached to it, the DB instance is public. *

                            *
                          • */ public final Boolean publiclyAccessible() { return publiclyAccessible; } /** * For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that * the value is non-empty (for which, you should check the {@code isEmpty()} method on the property). This is useful * because the SDK will never return a null collection or map, but you may need to differentiate between the service * returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true * if a value for the property was specified in the request builder, and false if a value was not specified. */ public final boolean hasTags() { return tags != null && !(tags instanceof SdkAutoConstructList); } /** *

                            * Tags to assign to the DB instance. *

                            *

                            * Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

                            *

                            * This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasTags} method. *

                            * * @return Tags to assign to the DB instance. */ public final List tags() { return tags; } /** *

                            * The identifier of the DB cluster that this DB instance will belong to. *

                            *

                            * This setting doesn't apply to RDS Custom DB instances. *

                            * * @return The identifier of the DB cluster that this DB instance will belong to.

                            *

                            * This setting doesn't apply to RDS Custom DB instances. */ public final String dbClusterIdentifier() { return dbClusterIdentifier; } /** *

                            * The storage type to associate with the DB instance. *

                            *

                            * If you specify io1, io2, or gp3, you must also include a value for the * Iops parameter. *

                            *

                            * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                            *

                            * Valid Values: gp2 | gp3 | io1 | io2 | standard *

                            *

                            * Default: io1, if the Iops parameter is specified. Otherwise, gp2. *

                            * * @return The storage type to associate with the DB instance.

                            *

                            * If you specify io1, io2, or gp3, you must also include a value for * the Iops parameter. *

                            *

                            * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                            *

                            * Valid Values: gp2 | gp3 | io1 | io2 | standard *

                            *

                            * Default: io1, if the Iops parameter is specified. Otherwise, gp2. */ public final String storageType() { return storageType; } /** *

                            * The ARN from the key store with which to associate the instance for TDE encryption. *

                            *

                            * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                            * * @return The ARN from the key store with which to associate the instance for TDE encryption.

                            *

                            * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. */ public final String tdeCredentialArn() { return tdeCredentialArn; } /** *

                            * The password for the given ARN from the key store in order to access the device. *

                            *

                            * This setting doesn't apply to RDS Custom DB instances. *

                            * * @return The password for the given ARN from the key store in order to access the device.

                            *

                            * This setting doesn't apply to RDS Custom DB instances. */ public final String tdeCredentialPassword() { return tdeCredentialPassword; } /** *

                            * Specifes whether the DB instance is encrypted. By default, it isn't encrypted. *

                            *

                            * For RDS Custom DB instances, either enable this setting or leave it unset. Otherwise, Amazon RDS reports an * error. *

                            *

                            * This setting doesn't apply to Amazon Aurora DB instances. The encryption for DB instances is managed by the DB * cluster. *

                            * * @return Specifes whether the DB instance is encrypted. By default, it isn't encrypted.

                            *

                            * For RDS Custom DB instances, either enable this setting or leave it unset. Otherwise, Amazon RDS reports * an error. *

                            *

                            * This setting doesn't apply to Amazon Aurora DB instances. The encryption for DB instances is managed by * the DB cluster. */ public final Boolean storageEncrypted() { return storageEncrypted; } /** *

                            * The Amazon Web Services KMS key identifier for an encrypted DB instance. *

                            *

                            * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To * use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. *

                            *

                            * This setting doesn't apply to Amazon Aurora DB instances. The Amazon Web Services KMS key identifier is managed * by the DB cluster. For more information, see CreateDBCluster. *

                            *

                            * If StorageEncrypted is enabled, and you do not specify a value for the KmsKeyId * parameter, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services * account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region. *

                            *

                            * For Amazon RDS Custom, a KMS key is required for DB instances. For most RDS engines, if you leave this parameter * empty while enabling StorageEncrypted, the engine uses the default KMS key. However, RDS Custom * doesn't use the default key when this parameter is empty. You must explicitly specify a key. *

                            * * @return The Amazon Web Services KMS key identifier for an encrypted DB instance.

                            *

                            * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS * key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. *

                            *

                            * This setting doesn't apply to Amazon Aurora DB instances. The Amazon Web Services KMS key identifier is * managed by the DB cluster. For more information, see CreateDBCluster. *

                            *

                            * If StorageEncrypted is enabled, and you do not specify a value for the KmsKeyId * parameter, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web * Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web * Services Region. *

                            *

                            * For Amazon RDS Custom, a KMS key is required for DB instances. For most RDS engines, if you leave this * parameter empty while enabling StorageEncrypted, the engine uses the default KMS key. * However, RDS Custom doesn't use the default key when this parameter is empty. You must explicitly specify * a key. */ public final String kmsKeyId() { return kmsKeyId; } /** *

                            * The Active Directory directory ID to create the DB instance in. Currently, you can create only Db2, MySQL, * Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain. *

                            *

                            * For more information, see Kerberos * Authentication in the Amazon RDS User Guide. *

                            *

                            * This setting doesn't apply to the following DB instances: *

                            *
                              *
                            • *

                              * Amazon Aurora (The domain is managed by the DB cluster.) *

                              *
                            • *
                            • *

                              * RDS Custom *

                              *
                            • *
                            * * @return The Active Directory directory ID to create the DB instance in. Currently, you can create only Db2, * MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

                            *

                            * For more information, see Kerberos * Authentication in the Amazon RDS User Guide. *

                            *

                            * This setting doesn't apply to the following DB instances: *

                            *
                              *
                            • *

                              * Amazon Aurora (The domain is managed by the DB cluster.) *

                              *
                            • *
                            • *

                              * RDS Custom *

                              *
                            • */ public final String domain() { return domain; } /** *

                              * The fully qualified domain name (FQDN) of an Active Directory domain. *

                              *

                              * Constraints: *

                              *
                                *
                              • *

                                * Can't be longer than 64 characters. *

                                *
                              • *
                              *

                              * Example: mymanagedADtest.mymanagedAD.mydomain *

                              * * @return The fully qualified domain name (FQDN) of an Active Directory domain.

                              *

                              * Constraints: *

                              *
                                *
                              • *

                                * Can't be longer than 64 characters. *

                                *
                              • *
                              *

                              * Example: mymanagedADtest.mymanagedAD.mydomain */ public final String domainFqdn() { return domainFqdn; } /** *

                              * The Active Directory organizational unit for your DB instance to join. *

                              *

                              * Constraints: *

                              *
                                *
                              • *

                                * Must be in the distinguished name format. *

                                *
                              • *
                              • *

                                * Can't be longer than 64 characters. *

                                *
                              • *
                              *

                              * Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain *

                              * * @return The Active Directory organizational unit for your DB instance to join.

                              *

                              * Constraints: *

                              *
                                *
                              • *

                                * Must be in the distinguished name format. *

                                *
                              • *
                              • *

                                * Can't be longer than 64 characters. *

                                *
                              • *
                              *

                              * Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain */ public final String domainOu() { return domainOu; } /** *

                              * The ARN for the Secrets Manager secret with the credentials for the user joining the domain. *

                              *

                              * Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456 *

                              * * @return The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

                              *

                              * Example: * arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456 */ public final String domainAuthSecretArn() { return domainAuthSecretArn; } /** * For responses, this returns true if the service returned a value for the DomainDnsIps property. This DOES NOT * check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the property). * This is useful because the SDK will never return a null collection or map, but you may need to differentiate * between the service returning nothing (or null) and the service returning an empty collection or map. For * requests, this returns true if a value for the property was specified in the request builder, and false if a * value was not specified. */ public final boolean hasDomainDnsIps() { return domainDnsIps != null && !(domainDnsIps instanceof SdkAutoConstructList); } /** *

                              * The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers. *

                              *

                              * Constraints: *

                              *
                                *
                              • *

                                * Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the * primary domain controller for both entries in the list. *

                                *
                              • *
                              *

                              * Example: 123.124.125.126,234.235.236.237 *

                              *

                              * Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

                              *

                              * This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasDomainDnsIps} method. *

                              * * @return The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.

                              *

                              * Constraints: *

                              *
                                *
                              • *

                                * Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of * the primary domain controller for both entries in the list. *

                                *
                              • *
                              *

                              * Example: 123.124.125.126,234.235.236.237 */ public final List domainDnsIps() { return domainDnsIps; } /** *

                              * Specifies whether to copy tags from the DB instance to snapshots of the DB instance. By default, tags are not * copied. *

                              *

                              * This setting doesn't apply to Amazon Aurora DB instances. Copying tags to snapshots is managed by the DB cluster. * Setting this value for an Aurora DB instance has no effect on the DB cluster setting. *

                              * * @return Specifies whether to copy tags from the DB instance to snapshots of the DB instance. By default, tags are * not copied.

                              *

                              * This setting doesn't apply to Amazon Aurora DB instances. Copying tags to snapshots is managed by the DB * cluster. Setting this value for an Aurora DB instance has no effect on the DB cluster setting. */ public final Boolean copyTagsToSnapshot() { return copyTagsToSnapshot; } /** *

                              * The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To * disable collection of Enhanced Monitoring metrics, specify 0. *

                              *

                              * If MonitoringRoleArn is specified, then you must set MonitoringInterval to a value * other than 0. *

                              *

                              * This setting doesn't apply to RDS Custom DB instances. *

                              *

                              * Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60 *

                              *

                              * Default: 0 *

                              * * @return The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB * instance. To disable collection of Enhanced Monitoring metrics, specify 0.

                              *

                              * If MonitoringRoleArn is specified, then you must set MonitoringInterval to a * value other than 0. *

                              *

                              * This setting doesn't apply to RDS Custom DB instances. *

                              *

                              * Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60 *

                              *

                              * Default: 0 */ public final Integer monitoringInterval() { return monitoringInterval; } /** *

                              * The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch Logs. For * example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, see * Setting Up and Enabling Enhanced Monitoring in the Amazon RDS User Guide. *

                              *

                              * If MonitoringInterval is set to a value other than 0, then you must supply a * MonitoringRoleArn value. *

                              *

                              * This setting doesn't apply to RDS Custom DB instances. *

                              * * @return The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch Logs. * For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a * monitoring role, see Setting Up and Enabling Enhanced Monitoring in the Amazon RDS User Guide.

                              *

                              * If MonitoringInterval is set to a value other than 0, then you must supply a * MonitoringRoleArn value. *

                              *

                              * This setting doesn't apply to RDS Custom DB instances. */ public final String monitoringRoleArn() { return monitoringRoleArn; } /** *

                              * The name of the IAM role to use when making API calls to the Directory Service. *

                              *

                              * This setting doesn't apply to the following DB instances: *

                              *
                                *
                              • *

                                * Amazon Aurora (The domain is managed by the DB cluster.) *

                                *
                              • *
                              • *

                                * RDS Custom *

                                *
                              • *
                              * * @return The name of the IAM role to use when making API calls to the Directory Service.

                              *

                              * This setting doesn't apply to the following DB instances: *

                              *
                                *
                              • *

                                * Amazon Aurora (The domain is managed by the DB cluster.) *

                                *
                              • *
                              • *

                                * RDS Custom *

                                *
                              • */ public final String domainIAMRoleName() { return domainIAMRoleName; } /** *

                                * The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of the * existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide. *

                                *

                                * This setting doesn't apply to RDS Custom DB instances. *

                                *

                                * Default: 1 *

                                *

                                * Valid Values: 0 - 15 *

                                * * @return The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of * the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide.

                                *

                                * This setting doesn't apply to RDS Custom DB instances. *

                                *

                                * Default: 1 *

                                *

                                * Valid Values: 0 - 15 */ public final Integer promotionTier() { return promotionTier; } /** *

                                * The time zone of the DB instance. The time zone parameter is currently supported only by RDS for Db2 and RDS for SQL Server. *

                                * * @return The time zone of the DB instance. The time zone parameter is currently supported only by RDS for Db2 and RDS for SQL Server. */ public final String timezone() { return timezone; } /** *

                                * Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to * database accounts. By default, mapping isn't enabled. *

                                *

                                * For more information, see IAM Database * Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide. *

                                *

                                * This setting doesn't apply to the following DB instances: *

                                *
                                  *
                                • *

                                  * Amazon Aurora (Mapping Amazon Web Services IAM accounts to database accounts is managed by the DB cluster.) *

                                  *
                                • *
                                • *

                                  * RDS Custom *

                                  *
                                • *
                                * * @return Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts * to database accounts. By default, mapping isn't enabled.

                                *

                                * For more information, see IAM Database * Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide. *

                                *

                                * This setting doesn't apply to the following DB instances: *

                                *
                                  *
                                • *

                                  * Amazon Aurora (Mapping Amazon Web Services IAM accounts to database accounts is managed by the DB * cluster.) *

                                  *
                                • *
                                • *

                                  * RDS Custom *

                                  *
                                • */ public final Boolean enableIAMDatabaseAuthentication() { return enableIAMDatabaseAuthentication; } /** *

                                  * Specifies whether to enable Performance Insights for the DB instance. For more information, see Using Amazon Performance * Insights in the Amazon RDS User Guide. *

                                  *

                                  * This setting doesn't apply to RDS Custom DB instances. *

                                  * * @return Specifies whether to enable Performance Insights for the DB instance. For more information, see Using Amazon * Performance Insights in the Amazon RDS User Guide.

                                  *

                                  * This setting doesn't apply to RDS Custom DB instances. */ public final Boolean enablePerformanceInsights() { return enablePerformanceInsights; } /** *

                                  * The Amazon Web Services KMS key identifier for encryption of Performance Insights data. *

                                  *

                                  * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *

                                  *

                                  * If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default KMS * key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a * different default KMS key for each Amazon Web Services Region. *

                                  *

                                  * This setting doesn't apply to RDS Custom DB instances. *

                                  * * @return The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

                                  *

                                  * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS * key. *

                                  *

                                  * If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your * default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web * Services account has a different default KMS key for each Amazon Web Services Region. *

                                  *

                                  * This setting doesn't apply to RDS Custom DB instances. */ public final String performanceInsightsKMSKeyId() { return performanceInsightsKMSKeyId; } /** *

                                  * The number of days to retain Performance Insights data. *

                                  *

                                  * This setting doesn't apply to RDS Custom DB instances. *

                                  *

                                  * Valid Values: *

                                  *
                                    *
                                  • *

                                    * 7 *

                                    *
                                  • *
                                  • *

                                    * month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * 31), * 341 (11 months * 31), 589 (19 months * 31) *

                                    *
                                  • *
                                  • *

                                    * 731 *

                                    *
                                  • *
                                  *

                                  * Default: 7 days *

                                  *

                                  * If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error. *

                                  * * @return The number of days to retain Performance Insights data.

                                  *

                                  * This setting doesn't apply to RDS Custom DB instances. *

                                  *

                                  * Valid Values: *

                                  *
                                    *
                                  • *

                                    * 7 *

                                    *
                                  • *
                                  • *

                                    * month * 31, where month is a number of months from 1-23. Examples: 93 (3 * months * 31), 341 (11 months * 31), 589 (19 months * 31) *

                                    *
                                  • *
                                  • *

                                    * 731 *

                                    *
                                  • *
                                  *

                                  * Default: 7 days *

                                  *

                                  * If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error. */ public final Integer performanceInsightsRetentionPeriod() { return performanceInsightsRetentionPeriod; } /** * For responses, this returns true if the service returned a value for the EnableCloudwatchLogsExports property. * This DOES NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the * property). This is useful because the SDK will never return a null collection or map, but you may need to * differentiate between the service returning nothing (or null) and the service returning an empty collection or * map. For requests, this returns true if a value for the property was specified in the request builder, and false * if a value was not specified. */ public final boolean hasEnableCloudwatchLogsExports() { return enableCloudwatchLogsExports != null && !(enableCloudwatchLogsExports instanceof SdkAutoConstructList); } /** *

                                  * The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide. *

                                  *

                                  * This setting doesn't apply to the following DB instances: *

                                  *
                                    *
                                  • *

                                    * Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.) *

                                    *
                                  • *
                                  • *

                                    * RDS Custom *

                                    *
                                  • *
                                  *

                                  * The following values are valid for each DB engine: *

                                  *
                                    *
                                  • *

                                    * RDS for Db2 - diag.log | notify.log *

                                    *
                                  • *
                                  • *

                                    * RDS for MariaDB - audit | error | general | slowquery *

                                    *
                                  • *
                                  • *

                                    * RDS for Microsoft SQL Server - agent | error *

                                    *
                                  • *
                                  • *

                                    * RDS for MySQL - audit | error | general | slowquery *

                                    *
                                  • *
                                  • *

                                    * RDS for Oracle - alert | audit | listener | trace | oemagent *

                                    *
                                  • *
                                  • *

                                    * RDS for PostgreSQL - postgresql | upgrade *

                                    *
                                  • *
                                  *

                                  * Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

                                  *

                                  * This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasEnableCloudwatchLogsExports} method. *

                                  * * @return The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

                                  *

                                  * This setting doesn't apply to the following DB instances: *

                                  *
                                    *
                                  • *

                                    * Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.) *

                                    *
                                  • *
                                  • *

                                    * RDS Custom *

                                    *
                                  • *
                                  *

                                  * The following values are valid for each DB engine: *

                                  *
                                    *
                                  • *

                                    * RDS for Db2 - diag.log | notify.log *

                                    *
                                  • *
                                  • *

                                    * RDS for MariaDB - audit | error | general | slowquery *

                                    *
                                  • *
                                  • *

                                    * RDS for Microsoft SQL Server - agent | error *

                                    *
                                  • *
                                  • *

                                    * RDS for MySQL - audit | error | general | slowquery *

                                    *
                                  • *
                                  • *

                                    * RDS for Oracle - alert | audit | listener | trace | oemagent *

                                    *
                                  • *
                                  • *

                                    * RDS for PostgreSQL - postgresql | upgrade *

                                    *
                                  • */ public final List enableCloudwatchLogsExports() { return enableCloudwatchLogsExports; } /** * For responses, this returns true if the service returned a value for the ProcessorFeatures property. This DOES * NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the property). * This is useful because the SDK will never return a null collection or map, but you may need to differentiate * between the service returning nothing (or null) and the service returning an empty collection or map. For * requests, this returns true if a value for the property was specified in the request builder, and false if a * value was not specified. */ public final boolean hasProcessorFeatures() { return processorFeatures != null && !(processorFeatures instanceof SdkAutoConstructList); } /** *

                                    * The number of CPU cores and the number of threads per core for the DB instance class of the DB instance. *

                                    *

                                    * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                    *

                                    * Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

                                    *

                                    * This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasProcessorFeatures} method. *

                                    * * @return The number of CPU cores and the number of threads per core for the DB instance class of the DB * instance.

                                    *

                                    * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. */ public final List processorFeatures() { return processorFeatures; } /** *

                                    * Specifies whether the DB instance has deletion protection enabled. The database can't be deleted when deletion * protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB * Instance. *

                                    *

                                    * This setting doesn't apply to Amazon Aurora DB instances. You can enable or disable deletion protection for the * DB cluster. For more information, see CreateDBCluster. DB instances in a DB cluster can be deleted * even when deletion protection is enabled for the DB cluster. *

                                    * * @return Specifies whether the DB instance has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see * Deleting a DB * Instance.

                                    *

                                    * This setting doesn't apply to Amazon Aurora DB instances. You can enable or disable deletion protection * for the DB cluster. For more information, see CreateDBCluster. DB instances in a DB cluster * can be deleted even when deletion protection is enabled for the DB cluster. */ public final Boolean deletionProtection() { return deletionProtection; } /** *

                                    * The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance. *

                                    *

                                    * For more information about this setting, including limitations that apply to it, see * Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide. *

                                    *

                                    * This setting doesn't apply to the following DB instances: *

                                    *
                                      *
                                    • *

                                      * Amazon Aurora (Storage is managed by the DB cluster.) *

                                      *
                                    • *
                                    • *

                                      * RDS Custom *

                                      *
                                    • *
                                    * * @return The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB * instance.

                                    *

                                    * For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User * Guide. *

                                    *

                                    * This setting doesn't apply to the following DB instances: *

                                    *
                                      *
                                    • *

                                      * Amazon Aurora (Storage is managed by the DB cluster.) *

                                      *
                                    • *
                                    • *

                                      * RDS Custom *

                                      *
                                    • */ public final Integer maxAllocatedStorage() { return maxAllocatedStorage; } /** *

                                      * Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance. *

                                      *

                                      * A CoIP provides local or external connectivity to resources in your Outpost subnets through your * on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from * outside of its virtual private cloud (VPC) on your local network. *

                                      *

                                      * For more information about RDS on Outposts, see Working with Amazon RDS on * Amazon Web Services Outposts in the Amazon RDS User Guide. *

                                      *

                                      * For more information about CoIPs, see Customer-owned IP * addresses in the Amazon Web Services Outposts User Guide. *

                                      * * @return Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

                                      *

                                      * A CoIP provides local or external connectivity to resources in your Outpost subnets through your * on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB * instance from outside of its virtual private cloud (VPC) on your local network. *

                                      *

                                      * For more information about RDS on Outposts, see Working with Amazon * RDS on Amazon Web Services Outposts in the Amazon RDS User Guide. *

                                      *

                                      * For more information about CoIPs, see Customer-owned IP * addresses in the Amazon Web Services Outposts User Guide. */ public final Boolean enableCustomerOwnedIp() { return enableCustomerOwnedIp; } /** *

                                      * The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. *

                                      *

                                      * This setting is required for RDS Custom. *

                                      *

                                      * Constraints: *

                                      *
                                        *
                                      • *

                                        * The profile must exist in your account. *

                                        *
                                      • *
                                      • *

                                        * The profile must have an IAM role that Amazon EC2 has permissions to assume. *

                                        *
                                      • *
                                      • *

                                        * The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom. *

                                        *
                                      • *
                                      *

                                      * For the list of permissions required for the IAM role, see * Configure IAM and your VPC in the Amazon RDS User Guide. *

                                      * * @return The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.

                                      *

                                      * This setting is required for RDS Custom. *

                                      *

                                      * Constraints: *

                                      *
                                        *
                                      • *

                                        * The profile must exist in your account. *

                                        *
                                      • *
                                      • *

                                        * The profile must have an IAM role that Amazon EC2 has permissions to assume. *

                                        *
                                      • *
                                      • *

                                        * The instance profile name and the associated IAM role name must start with the prefix * AWSRDSCustom. *

                                        *
                                      • *
                                      *

                                      * For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide. */ public final String customIamInstanceProfile() { return customIamInstanceProfile; } /** *

                                      * The location for storing automated backups and manual snapshots. *

                                      *

                                      * Valid Values: *

                                      *
                                        *
                                      • *

                                        * outposts (Amazon Web Services Outposts) *

                                        *
                                      • *
                                      • *

                                        * region (Amazon Web Services Region) *

                                        *
                                      • *
                                      *

                                      * Default: region *

                                      *

                                      * For more information, see Working with Amazon RDS on * Amazon Web Services Outposts in the Amazon RDS User Guide. *

                                      * * @return The location for storing automated backups and manual snapshots.

                                      *

                                      * Valid Values: *

                                      *
                                        *
                                      • *

                                        * outposts (Amazon Web Services Outposts) *

                                        *
                                      • *
                                      • *

                                        * region (Amazon Web Services Region) *

                                        *
                                      • *
                                      *

                                      * Default: region *

                                      *

                                      * For more information, see Working with Amazon * RDS on Amazon Web Services Outposts in the Amazon RDS User Guide. */ public final String backupTarget() { return backupTarget; } /** *

                                      * The network type of the DB instance. *

                                      *

                                      * The network type is determined by the DBSubnetGroup specified for the DB instance. A * DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols ( * DUAL). *

                                      *

                                      * For more information, see Working * with a DB instance in a VPC in the Amazon RDS User Guide. *

                                      *

                                      * Valid Values: IPV4 | DUAL *

                                      * * @return The network type of the DB instance.

                                      *

                                      * The network type is determined by the DBSubnetGroup specified for the DB instance. A * DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols ( * DUAL). *

                                      *

                                      * For more information, see * Working with a DB instance in a VPC in the Amazon RDS User Guide. *

                                      *

                                      * Valid Values: IPV4 | DUAL */ public final String networkType() { return networkType; } /** *

                                      * The storage throughput value for the DB instance. *

                                      *

                                      * This setting applies only to the gp3 storage type. *

                                      *

                                      * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                      * * @return The storage throughput value for the DB instance.

                                      *

                                      * This setting applies only to the gp3 storage type. *

                                      *

                                      * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. */ public final Integer storageThroughput() { return storageThroughput; } /** *

                                      * Specifies whether to manage the master user password with Amazon Web Services Secrets Manager. *

                                      *

                                      * For more information, see Password management with * Amazon Web Services Secrets Manager in the Amazon RDS User Guide. *

                                      *

                                      * Constraints: *

                                      *
                                        *
                                      • *

                                        * Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword * is specified. *

                                        *
                                      • *
                                      * * @return Specifies whether to manage the master user password with Amazon Web Services Secrets Manager.

                                      *

                                      * For more information, see Password * management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide. *

                                      *

                                      * Constraints: *

                                      *
                                        *
                                      • *

                                        * Can't manage the master user password with Amazon Web Services Secrets Manager if * MasterUserPassword is specified. *

                                        *
                                      • */ public final Boolean manageMasterUserPassword() { return manageMasterUserPassword; } /** *

                                        * The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in * Amazon Web Services Secrets Manager. *

                                        *

                                        * This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager * for the DB instance. *

                                        *

                                        * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To * use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. *

                                        *

                                        * If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS key is * used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't use the * aws/secretsmanager KMS key to encrypt the secret, and you must use a customer managed KMS key. *

                                        *

                                        * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different * default KMS key for each Amazon Web Services Region. *

                                        * * @return The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and * managed in Amazon Web Services Secrets Manager.

                                        *

                                        * This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets * Manager for the DB instance. *

                                        *

                                        * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS * key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. *

                                        *

                                        * If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS * key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you * can't use the aws/secretsmanager KMS key to encrypt the secret, and you must use a customer * managed KMS key. *

                                        *

                                        * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a * different default KMS key for each Amazon Web Services Region. */ public final String masterUserSecretKmsKeyId() { return masterUserSecretKmsKeyId; } /** *

                                        * The CA certificate identifier to use for the DB instance's server certificate. *

                                        *

                                        * This setting doesn't apply to RDS Custom DB instances. *

                                        *

                                        * For more information, see Using SSL/TLS to encrypt a * connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to * encrypt a connection to a DB cluster in the Amazon Aurora User Guide. *

                                        * * @return The CA certificate identifier to use for the DB instance's server certificate.

                                        *

                                        * This setting doesn't apply to RDS Custom DB instances. *

                                        *

                                        * For more information, see Using SSL/TLS to * encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS * to encrypt a connection to a DB cluster in the Amazon Aurora User Guide. */ public final String caCertificateIdentifier() { return caCertificateIdentifier; } /** *

                                        * The Oracle system identifier (SID), which is the name of the Oracle database instance that manages your database * files. In this context, the term "Oracle database instance" refers exclusively to the system global area (SGA) * and Oracle background processes. If you don't specify a SID, the value defaults to RDSCDB. The * Oracle SID is also the name of your CDB. *

                                        * * @return The Oracle system identifier (SID), which is the name of the Oracle database instance that manages your * database files. In this context, the term "Oracle database instance" refers exclusively to the system * global area (SGA) and Oracle background processes. If you don't specify a SID, the value defaults to * RDSCDB. The Oracle SID is also the name of your CDB. */ public final String dbSystemId() { return dbSystemId; } /** *

                                        * Indicates whether the DB instance has a dedicated log volume (DLV) enabled. *

                                        * * @return Indicates whether the DB instance has a dedicated log volume (DLV) enabled. */ public final Boolean dedicatedLogVolume() { return dedicatedLogVolume; } /** *

                                        * Specifies whether to use the multi-tenant configuration or the single-tenant configuration (default). This * parameter only applies to RDS for Oracle container database (CDB) engines. *

                                        *

                                        * Note the following restrictions: *

                                        *
                                          *
                                        • *

                                          * The DB engine that you specify in the request must support the multi-tenant configuration. If you attempt to * enable the multi-tenant configuration on a DB engine that doesn't support it, the request fails. *

                                          *
                                        • *
                                        • *

                                          * If you specify the multi-tenant configuration when you create your DB instance, you can't later modify this DB * instance to use the single-tenant configuration. *

                                          *
                                        • *
                                        * * @return Specifies whether to use the multi-tenant configuration or the single-tenant configuration (default). * This parameter only applies to RDS for Oracle container database (CDB) engines.

                                        *

                                        * Note the following restrictions: *

                                        *
                                          *
                                        • *

                                          * The DB engine that you specify in the request must support the multi-tenant configuration. If you attempt * to enable the multi-tenant configuration on a DB engine that doesn't support it, the request fails. *

                                          *
                                        • *
                                        • *

                                          * If you specify the multi-tenant configuration when you create your DB instance, you can't later modify * this DB instance to use the single-tenant configuration. *

                                          *
                                        • */ public final Boolean multiTenant() { return multiTenant; } /** *

                                          * The life cycle type for this DB instance. *

                                          * *

                                          * By default, this value is set to open-source-rds-extended-support, which enrolls your DB instance * into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by * setting the value to open-source-rds-extended-support-disabled. In this case, creating the DB * instance will fail if the DB major version is past its end of standard support date. *

                                          *
                                          *

                                          * This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle * type is managed by the DB cluster. *

                                          *

                                          * You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended Support, * you can run the selected major engine version on your DB instance past the end of standard support for that * engine version. For more information, see Using Amazon RDS Extended * Support in the Amazon RDS User Guide. *

                                          *

                                          * Valid Values: open-source-rds-extended-support | open-source-rds-extended-support-disabled *

                                          *

                                          * Default: open-source-rds-extended-support *

                                          * * @return The life cycle type for this DB instance.

                                          *

                                          * By default, this value is set to open-source-rds-extended-support, which enrolls your DB * instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for * Extended Support by setting the value to open-source-rds-extended-support-disabled. In this * case, creating the DB instance will fail if the DB major version is past its end of standard support * date. *

                                          *
                                          *

                                          * This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the * life cycle type is managed by the DB cluster. *

                                          *

                                          * You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended * Support, you can run the selected major engine version on your DB instance past the end of standard * support for that engine version. For more information, see Using Amazon RDS * Extended Support in the Amazon RDS User Guide. *

                                          *

                                          * Valid Values: open-source-rds-extended-support | open-source-rds-extended-support-disabled *

                                          *

                                          * Default: open-source-rds-extended-support */ public final String engineLifecycleSupport() { return engineLifecycleSupport; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public final int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + super.hashCode(); hashCode = 31 * hashCode + Objects.hashCode(dbName()); hashCode = 31 * hashCode + Objects.hashCode(dbInstanceIdentifier()); hashCode = 31 * hashCode + Objects.hashCode(allocatedStorage()); hashCode = 31 * hashCode + Objects.hashCode(dbInstanceClass()); hashCode = 31 * hashCode + Objects.hashCode(engine()); hashCode = 31 * hashCode + Objects.hashCode(masterUsername()); hashCode = 31 * hashCode + Objects.hashCode(masterUserPassword()); hashCode = 31 * hashCode + Objects.hashCode(hasDbSecurityGroups() ? dbSecurityGroups() : null); hashCode = 31 * hashCode + Objects.hashCode(hasVpcSecurityGroupIds() ? vpcSecurityGroupIds() : null); hashCode = 31 * hashCode + Objects.hashCode(availabilityZone()); hashCode = 31 * hashCode + Objects.hashCode(dbSubnetGroupName()); hashCode = 31 * hashCode + Objects.hashCode(preferredMaintenanceWindow()); hashCode = 31 * hashCode + Objects.hashCode(dbParameterGroupName()); hashCode = 31 * hashCode + Objects.hashCode(backupRetentionPeriod()); hashCode = 31 * hashCode + Objects.hashCode(preferredBackupWindow()); hashCode = 31 * hashCode + Objects.hashCode(port()); hashCode = 31 * hashCode + Objects.hashCode(multiAZ()); hashCode = 31 * hashCode + Objects.hashCode(engineVersion()); hashCode = 31 * hashCode + Objects.hashCode(autoMinorVersionUpgrade()); hashCode = 31 * hashCode + Objects.hashCode(licenseModel()); hashCode = 31 * hashCode + Objects.hashCode(iops()); hashCode = 31 * hashCode + Objects.hashCode(optionGroupName()); hashCode = 31 * hashCode + Objects.hashCode(characterSetName()); hashCode = 31 * hashCode + Objects.hashCode(ncharCharacterSetName()); hashCode = 31 * hashCode + Objects.hashCode(publiclyAccessible()); hashCode = 31 * hashCode + Objects.hashCode(hasTags() ? tags() : null); hashCode = 31 * hashCode + Objects.hashCode(dbClusterIdentifier()); hashCode = 31 * hashCode + Objects.hashCode(storageType()); hashCode = 31 * hashCode + Objects.hashCode(tdeCredentialArn()); hashCode = 31 * hashCode + Objects.hashCode(tdeCredentialPassword()); hashCode = 31 * hashCode + Objects.hashCode(storageEncrypted()); hashCode = 31 * hashCode + Objects.hashCode(kmsKeyId()); hashCode = 31 * hashCode + Objects.hashCode(domain()); hashCode = 31 * hashCode + Objects.hashCode(domainFqdn()); hashCode = 31 * hashCode + Objects.hashCode(domainOu()); hashCode = 31 * hashCode + Objects.hashCode(domainAuthSecretArn()); hashCode = 31 * hashCode + Objects.hashCode(hasDomainDnsIps() ? domainDnsIps() : null); hashCode = 31 * hashCode + Objects.hashCode(copyTagsToSnapshot()); hashCode = 31 * hashCode + Objects.hashCode(monitoringInterval()); hashCode = 31 * hashCode + Objects.hashCode(monitoringRoleArn()); hashCode = 31 * hashCode + Objects.hashCode(domainIAMRoleName()); hashCode = 31 * hashCode + Objects.hashCode(promotionTier()); hashCode = 31 * hashCode + Objects.hashCode(timezone()); hashCode = 31 * hashCode + Objects.hashCode(enableIAMDatabaseAuthentication()); hashCode = 31 * hashCode + Objects.hashCode(enablePerformanceInsights()); hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsKMSKeyId()); hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsRetentionPeriod()); hashCode = 31 * hashCode + Objects.hashCode(hasEnableCloudwatchLogsExports() ? enableCloudwatchLogsExports() : null); hashCode = 31 * hashCode + Objects.hashCode(hasProcessorFeatures() ? processorFeatures() : null); hashCode = 31 * hashCode + Objects.hashCode(deletionProtection()); hashCode = 31 * hashCode + Objects.hashCode(maxAllocatedStorage()); hashCode = 31 * hashCode + Objects.hashCode(enableCustomerOwnedIp()); hashCode = 31 * hashCode + Objects.hashCode(customIamInstanceProfile()); hashCode = 31 * hashCode + Objects.hashCode(backupTarget()); hashCode = 31 * hashCode + Objects.hashCode(networkType()); hashCode = 31 * hashCode + Objects.hashCode(storageThroughput()); hashCode = 31 * hashCode + Objects.hashCode(manageMasterUserPassword()); hashCode = 31 * hashCode + Objects.hashCode(masterUserSecretKmsKeyId()); hashCode = 31 * hashCode + Objects.hashCode(caCertificateIdentifier()); hashCode = 31 * hashCode + Objects.hashCode(dbSystemId()); hashCode = 31 * hashCode + Objects.hashCode(dedicatedLogVolume()); hashCode = 31 * hashCode + Objects.hashCode(multiTenant()); hashCode = 31 * hashCode + Objects.hashCode(engineLifecycleSupport()); return hashCode; } @Override public final boolean equals(Object obj) { return super.equals(obj) && equalsBySdkFields(obj); } @Override public final boolean equalsBySdkFields(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (!(obj instanceof CreateDbInstanceRequest)) { return false; } CreateDbInstanceRequest other = (CreateDbInstanceRequest) obj; return Objects.equals(dbName(), other.dbName()) && Objects.equals(dbInstanceIdentifier(), other.dbInstanceIdentifier()) && Objects.equals(allocatedStorage(), other.allocatedStorage()) && Objects.equals(dbInstanceClass(), other.dbInstanceClass()) && Objects.equals(engine(), other.engine()) && Objects.equals(masterUsername(), other.masterUsername()) && Objects.equals(masterUserPassword(), other.masterUserPassword()) && hasDbSecurityGroups() == other.hasDbSecurityGroups() && Objects.equals(dbSecurityGroups(), other.dbSecurityGroups()) && hasVpcSecurityGroupIds() == other.hasVpcSecurityGroupIds() && Objects.equals(vpcSecurityGroupIds(), other.vpcSecurityGroupIds()) && Objects.equals(availabilityZone(), other.availabilityZone()) && Objects.equals(dbSubnetGroupName(), other.dbSubnetGroupName()) && Objects.equals(preferredMaintenanceWindow(), other.preferredMaintenanceWindow()) && Objects.equals(dbParameterGroupName(), other.dbParameterGroupName()) && Objects.equals(backupRetentionPeriod(), other.backupRetentionPeriod()) && Objects.equals(preferredBackupWindow(), other.preferredBackupWindow()) && Objects.equals(port(), other.port()) && Objects.equals(multiAZ(), other.multiAZ()) && Objects.equals(engineVersion(), other.engineVersion()) && Objects.equals(autoMinorVersionUpgrade(), other.autoMinorVersionUpgrade()) && Objects.equals(licenseModel(), other.licenseModel()) && Objects.equals(iops(), other.iops()) && Objects.equals(optionGroupName(), other.optionGroupName()) && Objects.equals(characterSetName(), other.characterSetName()) && Objects.equals(ncharCharacterSetName(), other.ncharCharacterSetName()) && Objects.equals(publiclyAccessible(), other.publiclyAccessible()) && hasTags() == other.hasTags() && Objects.equals(tags(), other.tags()) && Objects.equals(dbClusterIdentifier(), other.dbClusterIdentifier()) && Objects.equals(storageType(), other.storageType()) && Objects.equals(tdeCredentialArn(), other.tdeCredentialArn()) && Objects.equals(tdeCredentialPassword(), other.tdeCredentialPassword()) && Objects.equals(storageEncrypted(), other.storageEncrypted()) && Objects.equals(kmsKeyId(), other.kmsKeyId()) && Objects.equals(domain(), other.domain()) && Objects.equals(domainFqdn(), other.domainFqdn()) && Objects.equals(domainOu(), other.domainOu()) && Objects.equals(domainAuthSecretArn(), other.domainAuthSecretArn()) && hasDomainDnsIps() == other.hasDomainDnsIps() && Objects.equals(domainDnsIps(), other.domainDnsIps()) && Objects.equals(copyTagsToSnapshot(), other.copyTagsToSnapshot()) && Objects.equals(monitoringInterval(), other.monitoringInterval()) && Objects.equals(monitoringRoleArn(), other.monitoringRoleArn()) && Objects.equals(domainIAMRoleName(), other.domainIAMRoleName()) && Objects.equals(promotionTier(), other.promotionTier()) && Objects.equals(timezone(), other.timezone()) && Objects.equals(enableIAMDatabaseAuthentication(), other.enableIAMDatabaseAuthentication()) && Objects.equals(enablePerformanceInsights(), other.enablePerformanceInsights()) && Objects.equals(performanceInsightsKMSKeyId(), other.performanceInsightsKMSKeyId()) && Objects.equals(performanceInsightsRetentionPeriod(), other.performanceInsightsRetentionPeriod()) && hasEnableCloudwatchLogsExports() == other.hasEnableCloudwatchLogsExports() && Objects.equals(enableCloudwatchLogsExports(), other.enableCloudwatchLogsExports()) && hasProcessorFeatures() == other.hasProcessorFeatures() && Objects.equals(processorFeatures(), other.processorFeatures()) && Objects.equals(deletionProtection(), other.deletionProtection()) && Objects.equals(maxAllocatedStorage(), other.maxAllocatedStorage()) && Objects.equals(enableCustomerOwnedIp(), other.enableCustomerOwnedIp()) && Objects.equals(customIamInstanceProfile(), other.customIamInstanceProfile()) && Objects.equals(backupTarget(), other.backupTarget()) && Objects.equals(networkType(), other.networkType()) && Objects.equals(storageThroughput(), other.storageThroughput()) && Objects.equals(manageMasterUserPassword(), other.manageMasterUserPassword()) && Objects.equals(masterUserSecretKmsKeyId(), other.masterUserSecretKmsKeyId()) && Objects.equals(caCertificateIdentifier(), other.caCertificateIdentifier()) && Objects.equals(dbSystemId(), other.dbSystemId()) && Objects.equals(dedicatedLogVolume(), other.dedicatedLogVolume()) && Objects.equals(multiTenant(), other.multiTenant()) && Objects.equals(engineLifecycleSupport(), other.engineLifecycleSupport()); } /** * 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. */ @Override public final String toString() { return ToString.builder("CreateDbInstanceRequest").add("DBName", dbName()) .add("DBInstanceIdentifier", dbInstanceIdentifier()).add("AllocatedStorage", allocatedStorage()) .add("DBInstanceClass", dbInstanceClass()).add("Engine", engine()).add("MasterUsername", masterUsername()) .add("MasterUserPassword", masterUserPassword()) .add("DBSecurityGroups", hasDbSecurityGroups() ? dbSecurityGroups() : null) .add("VpcSecurityGroupIds", hasVpcSecurityGroupIds() ? vpcSecurityGroupIds() : null) .add("AvailabilityZone", availabilityZone()).add("DBSubnetGroupName", dbSubnetGroupName()) .add("PreferredMaintenanceWindow", preferredMaintenanceWindow()) .add("DBParameterGroupName", dbParameterGroupName()).add("BackupRetentionPeriod", backupRetentionPeriod()) .add("PreferredBackupWindow", preferredBackupWindow()).add("Port", port()).add("MultiAZ", multiAZ()) .add("EngineVersion", engineVersion()).add("AutoMinorVersionUpgrade", autoMinorVersionUpgrade()) .add("LicenseModel", licenseModel()).add("Iops", iops()).add("OptionGroupName", optionGroupName()) .add("CharacterSetName", characterSetName()).add("NcharCharacterSetName", ncharCharacterSetName()) .add("PubliclyAccessible", publiclyAccessible()).add("Tags", hasTags() ? tags() : null) .add("DBClusterIdentifier", dbClusterIdentifier()).add("StorageType", storageType()) .add("TdeCredentialArn", tdeCredentialArn()).add("TdeCredentialPassword", tdeCredentialPassword()) .add("StorageEncrypted", storageEncrypted()).add("KmsKeyId", kmsKeyId()).add("Domain", domain()) .add("DomainFqdn", domainFqdn()).add("DomainOu", domainOu()).add("DomainAuthSecretArn", domainAuthSecretArn()) .add("DomainDnsIps", hasDomainDnsIps() ? domainDnsIps() : null).add("CopyTagsToSnapshot", copyTagsToSnapshot()) .add("MonitoringInterval", monitoringInterval()).add("MonitoringRoleArn", monitoringRoleArn()) .add("DomainIAMRoleName", domainIAMRoleName()).add("PromotionTier", promotionTier()).add("Timezone", timezone()) .add("EnableIAMDatabaseAuthentication", enableIAMDatabaseAuthentication()) .add("EnablePerformanceInsights", enablePerformanceInsights()) .add("PerformanceInsightsKMSKeyId", performanceInsightsKMSKeyId()) .add("PerformanceInsightsRetentionPeriod", performanceInsightsRetentionPeriod()) .add("EnableCloudwatchLogsExports", hasEnableCloudwatchLogsExports() ? enableCloudwatchLogsExports() : null) .add("ProcessorFeatures", hasProcessorFeatures() ? processorFeatures() : null) .add("DeletionProtection", deletionProtection()).add("MaxAllocatedStorage", maxAllocatedStorage()) .add("EnableCustomerOwnedIp", enableCustomerOwnedIp()) .add("CustomIamInstanceProfile", customIamInstanceProfile()).add("BackupTarget", backupTarget()) .add("NetworkType", networkType()).add("StorageThroughput", storageThroughput()) .add("ManageMasterUserPassword", manageMasterUserPassword()) .add("MasterUserSecretKmsKeyId", masterUserSecretKmsKeyId()) .add("CACertificateIdentifier", caCertificateIdentifier()).add("DBSystemId", dbSystemId()) .add("DedicatedLogVolume", dedicatedLogVolume()).add("MultiTenant", multiTenant()) .add("EngineLifecycleSupport", engineLifecycleSupport()).build(); } public final Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "DBName": return Optional.ofNullable(clazz.cast(dbName())); case "DBInstanceIdentifier": return Optional.ofNullable(clazz.cast(dbInstanceIdentifier())); case "AllocatedStorage": return Optional.ofNullable(clazz.cast(allocatedStorage())); case "DBInstanceClass": return Optional.ofNullable(clazz.cast(dbInstanceClass())); case "Engine": return Optional.ofNullable(clazz.cast(engine())); case "MasterUsername": return Optional.ofNullable(clazz.cast(masterUsername())); case "MasterUserPassword": return Optional.ofNullable(clazz.cast(masterUserPassword())); case "DBSecurityGroups": return Optional.ofNullable(clazz.cast(dbSecurityGroups())); case "VpcSecurityGroupIds": return Optional.ofNullable(clazz.cast(vpcSecurityGroupIds())); case "AvailabilityZone": return Optional.ofNullable(clazz.cast(availabilityZone())); case "DBSubnetGroupName": return Optional.ofNullable(clazz.cast(dbSubnetGroupName())); case "PreferredMaintenanceWindow": return Optional.ofNullable(clazz.cast(preferredMaintenanceWindow())); case "DBParameterGroupName": return Optional.ofNullable(clazz.cast(dbParameterGroupName())); case "BackupRetentionPeriod": return Optional.ofNullable(clazz.cast(backupRetentionPeriod())); case "PreferredBackupWindow": return Optional.ofNullable(clazz.cast(preferredBackupWindow())); case "Port": return Optional.ofNullable(clazz.cast(port())); case "MultiAZ": return Optional.ofNullable(clazz.cast(multiAZ())); case "EngineVersion": return Optional.ofNullable(clazz.cast(engineVersion())); case "AutoMinorVersionUpgrade": return Optional.ofNullable(clazz.cast(autoMinorVersionUpgrade())); case "LicenseModel": return Optional.ofNullable(clazz.cast(licenseModel())); case "Iops": return Optional.ofNullable(clazz.cast(iops())); case "OptionGroupName": return Optional.ofNullable(clazz.cast(optionGroupName())); case "CharacterSetName": return Optional.ofNullable(clazz.cast(characterSetName())); case "NcharCharacterSetName": return Optional.ofNullable(clazz.cast(ncharCharacterSetName())); case "PubliclyAccessible": return Optional.ofNullable(clazz.cast(publiclyAccessible())); case "Tags": return Optional.ofNullable(clazz.cast(tags())); case "DBClusterIdentifier": return Optional.ofNullable(clazz.cast(dbClusterIdentifier())); case "StorageType": return Optional.ofNullable(clazz.cast(storageType())); case "TdeCredentialArn": return Optional.ofNullable(clazz.cast(tdeCredentialArn())); case "TdeCredentialPassword": return Optional.ofNullable(clazz.cast(tdeCredentialPassword())); case "StorageEncrypted": return Optional.ofNullable(clazz.cast(storageEncrypted())); case "KmsKeyId": return Optional.ofNullable(clazz.cast(kmsKeyId())); case "Domain": return Optional.ofNullable(clazz.cast(domain())); case "DomainFqdn": return Optional.ofNullable(clazz.cast(domainFqdn())); case "DomainOu": return Optional.ofNullable(clazz.cast(domainOu())); case "DomainAuthSecretArn": return Optional.ofNullable(clazz.cast(domainAuthSecretArn())); case "DomainDnsIps": return Optional.ofNullable(clazz.cast(domainDnsIps())); case "CopyTagsToSnapshot": return Optional.ofNullable(clazz.cast(copyTagsToSnapshot())); case "MonitoringInterval": return Optional.ofNullable(clazz.cast(monitoringInterval())); case "MonitoringRoleArn": return Optional.ofNullable(clazz.cast(monitoringRoleArn())); case "DomainIAMRoleName": return Optional.ofNullable(clazz.cast(domainIAMRoleName())); case "PromotionTier": return Optional.ofNullable(clazz.cast(promotionTier())); case "Timezone": return Optional.ofNullable(clazz.cast(timezone())); case "EnableIAMDatabaseAuthentication": return Optional.ofNullable(clazz.cast(enableIAMDatabaseAuthentication())); case "EnablePerformanceInsights": return Optional.ofNullable(clazz.cast(enablePerformanceInsights())); case "PerformanceInsightsKMSKeyId": return Optional.ofNullable(clazz.cast(performanceInsightsKMSKeyId())); case "PerformanceInsightsRetentionPeriod": return Optional.ofNullable(clazz.cast(performanceInsightsRetentionPeriod())); case "EnableCloudwatchLogsExports": return Optional.ofNullable(clazz.cast(enableCloudwatchLogsExports())); case "ProcessorFeatures": return Optional.ofNullable(clazz.cast(processorFeatures())); case "DeletionProtection": return Optional.ofNullable(clazz.cast(deletionProtection())); case "MaxAllocatedStorage": return Optional.ofNullable(clazz.cast(maxAllocatedStorage())); case "EnableCustomerOwnedIp": return Optional.ofNullable(clazz.cast(enableCustomerOwnedIp())); case "CustomIamInstanceProfile": return Optional.ofNullable(clazz.cast(customIamInstanceProfile())); case "BackupTarget": return Optional.ofNullable(clazz.cast(backupTarget())); case "NetworkType": return Optional.ofNullable(clazz.cast(networkType())); case "StorageThroughput": return Optional.ofNullable(clazz.cast(storageThroughput())); case "ManageMasterUserPassword": return Optional.ofNullable(clazz.cast(manageMasterUserPassword())); case "MasterUserSecretKmsKeyId": return Optional.ofNullable(clazz.cast(masterUserSecretKmsKeyId())); case "CACertificateIdentifier": return Optional.ofNullable(clazz.cast(caCertificateIdentifier())); case "DBSystemId": return Optional.ofNullable(clazz.cast(dbSystemId())); case "DedicatedLogVolume": return Optional.ofNullable(clazz.cast(dedicatedLogVolume())); case "MultiTenant": return Optional.ofNullable(clazz.cast(multiTenant())); case "EngineLifecycleSupport": return Optional.ofNullable(clazz.cast(engineLifecycleSupport())); default: return Optional.empty(); } } @Override public final List> sdkFields() { return SDK_FIELDS; } private static Function getter(Function g) { return obj -> g.apply((CreateDbInstanceRequest) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends RdsRequest.Builder, SdkPojo, CopyableBuilder { /** *

                                          * The meaning of this parameter differs according to the database engine you use. *

                                          *
                                          *
                                          Amazon Aurora MySQL
                                          *
                                          *

                                          * The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If * this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 alphanumeric characters. *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          Amazon Aurora PostgreSQL
                                          *
                                          *

                                          * The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is * created. A database named postgres is always created. If this parameter is specified, an * additional database with this name is created. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * It must contain 1 to 63 alphanumeric characters. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0 to 9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          Amazon RDS Custom for Oracle
                                          *
                                          *

                                          * The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default * value is ORCL for non-CDBs and RDSCDB for CDBs. *

                                          *

                                          * Default: ORCL *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 8 alphanumeric characters. *

                                            *
                                          • *
                                          • *

                                            * Must contain a letter. *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          Amazon RDS Custom for SQL Server
                                          *
                                          *

                                          * Not applicable. Must be null. *

                                          *
                                          *
                                          RDS for Db2
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. In some cases, we recommend that you don't add a database name. For * more information, see Additional considerations in the Amazon RDS User Guide. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 letters or numbers. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MariaDB
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 letters or numbers. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MySQL
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. If this parameter isn't specified, no * database is created in the DB instance. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 letters or numbers. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for Oracle
                                          *
                                          *

                                          * The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is * ORCL. You can't specify the string null, or any other reserved word, for * DBName. *

                                          *

                                          * Default: ORCL *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Can't be longer than 8 characters. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for PostgreSQL
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. A database named postgres is * always created. If this parameter is specified, an additional database with this name is created. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 63 letters, numbers, or underscores. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for SQL Server
                                          *
                                          *

                                          * Not applicable. Must be null. *

                                          *
                                          *
                                          * * @param dbName * The meaning of this parameter differs according to the database engine you use.

                                          *
                                          *
                                          Amazon Aurora MySQL
                                          *
                                          *

                                          * The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is * created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in * the DB cluster. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 alphanumeric characters. *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          Amazon Aurora PostgreSQL
                                          *
                                          *

                                          * The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is * created. A database named postgres is always created. If this parameter is specified, an * additional database with this name is created. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * It must contain 1 to 63 alphanumeric characters. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0 to 9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          Amazon RDS Custom for Oracle
                                          *
                                          *

                                          * The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the * default value is ORCL for non-CDBs and RDSCDB for CDBs. *

                                          *

                                          * Default: ORCL *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 8 alphanumeric characters. *

                                            *
                                          • *
                                          • *

                                            * Must contain a letter. *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          Amazon RDS Custom for SQL Server
                                          *
                                          *

                                          * Not applicable. Must be null. *

                                          *
                                          *
                                          RDS for Db2
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. If this parameter isn't specified, * no database is created in the DB instance. In some cases, we recommend that you don't add a database * name. For more information, see Additional considerations in the Amazon RDS User Guide. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 letters or numbers. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MariaDB
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. If this parameter isn't specified, * no database is created in the DB instance. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 letters or numbers. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MySQL
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. If this parameter isn't specified, * no database is created in the DB instance. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 64 letters or numbers. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for Oracle
                                          *
                                          *

                                          * The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value * is ORCL. You can't specify the string null, or any other reserved word, for * DBName. *

                                          *

                                          * Default: ORCL *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Can't be longer than 8 characters. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for PostgreSQL
                                          *
                                          *

                                          * The name of the database to create when the DB instance is created. A database named * postgres is always created. If this parameter is specified, an additional database with * this name is created. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain 1 to 63 letters, numbers, or underscores. *

                                            *
                                          • *
                                          • *

                                            * Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9). *

                                            *
                                          • *
                                          • *

                                            * Can't be a word reserved by the specified database engine. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for SQL Server
                                          *
                                          *

                                          * Not applicable. Must be null. *

                                          *
                                          * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbName(String dbName); /** *

                                          * The identifier for this DB instance. This parameter is stored as a lowercase string. *

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain from 1 to 63 letters, numbers, or hyphens. *

                                            *
                                          • *
                                          • *

                                            * First character must be a letter. *

                                            *
                                          • *
                                          • *

                                            * Can't end with a hyphen or contain two consecutive hyphens. *

                                            *
                                          • *
                                          *

                                          * Example: mydbinstance *

                                          * * @param dbInstanceIdentifier * The identifier for this DB instance. This parameter is stored as a lowercase string.

                                          *

                                          * Constraints: *

                                          *
                                            *
                                          • *

                                            * Must contain from 1 to 63 letters, numbers, or hyphens. *

                                            *
                                          • *
                                          • *

                                            * First character must be a letter. *

                                            *
                                          • *
                                          • *

                                            * Can't end with a hyphen or contain two consecutive hyphens. *

                                            *
                                          • *
                                          *

                                          * Example: mydbinstance * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbInstanceIdentifier(String dbInstanceIdentifier); /** *

                                          * The amount of storage in gibibytes (GiB) to allocate for the DB instance. *

                                          *

                                          * This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as the * amount of data in your database increases, though you are only charged for the space that you use in an * Aurora cluster volume. *

                                          *
                                          *
                                          Amazon RDS Custom
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 40 to 65536 for RDS Custom for Oracle, * 16384 for RDS Custom for SQL Server. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 for * RDS Custom for SQL Server. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for Db2
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MariaDB
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 5 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MySQL
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 5 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for Oracle
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 10 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for PostgreSQL
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 5 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for SQL Server
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): *

                                            *
                                              *
                                            • *

                                              * Enterprise and Standard editions: Must be an integer from 20 to 16384. *

                                              *
                                            • *
                                            • *

                                              * Web and Express editions: Must be an integer from 20 to 16384. *

                                              *
                                            • *
                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): *

                                            *
                                              *
                                            • *

                                              * Enterprise and Standard editions: Must be an integer from 100 to 16384. *

                                              *
                                            • *
                                            • *

                                              * Web and Express editions: Must be an integer from 100 to 16384. *

                                              *
                                            • *
                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): *

                                            *
                                              *
                                            • *

                                              * Enterprise and Standard editions: Must be an integer from 20 to 1024. *

                                              *
                                            • *
                                            • *

                                              * Web and Express editions: Must be an integer from 20 to 1024. *

                                              *
                                            • *
                                            *
                                          • *
                                          *
                                          *
                                          * * @param allocatedStorage * The amount of storage in gibibytes (GiB) to allocate for the DB instance.

                                          *

                                          * This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as * the amount of data in your database increases, though you are only charged for the space that you use * in an Aurora cluster volume. *

                                          *
                                          *
                                          Amazon RDS Custom
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 40 to 65536 for RDS Custom for * Oracle, 16384 for RDS Custom for SQL Server. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 40 to 65536 for RDS Custom for Oracle, * 16384 for RDS Custom for SQL Server. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for Db2
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MariaDB
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 5 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for MySQL
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 5 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for Oracle
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 10 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for PostgreSQL
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): Must be an integer from 100 to 65536. *

                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): Must be an integer from 5 to 3072. *

                                            *
                                          • *
                                          *
                                          *
                                          RDS for SQL Server
                                          *
                                          *

                                          * Constraints to the amount of storage for each storage type are the following: *

                                          *
                                            *
                                          • *

                                            * General Purpose (SSD) storage (gp2, gp3): *

                                            *
                                              *
                                            • *

                                              * Enterprise and Standard editions: Must be an integer from 20 to 16384. *

                                              *
                                            • *
                                            • *

                                              * Web and Express editions: Must be an integer from 20 to 16384. *

                                              *
                                            • *
                                            *
                                          • *
                                          • *

                                            * Provisioned IOPS storage (io1, io2): *

                                            *
                                              *
                                            • *

                                              * Enterprise and Standard editions: Must be an integer from 100 to 16384. *

                                              *
                                            • *
                                            • *

                                              * Web and Express editions: Must be an integer from 100 to 16384. *

                                              *
                                            • *
                                            *
                                          • *
                                          • *

                                            * Magnetic storage (standard): *

                                            *
                                              *
                                            • *

                                              * Enterprise and Standard editions: Must be an integer from 20 to 1024. *

                                              *
                                            • *
                                            • *

                                              * Web and Express editions: Must be an integer from 20 to 1024. *

                                              *
                                            • *
                                            *
                                          • *
                                          *
                                          * @return Returns a reference to this object so that method calls can be chained together. */ Builder allocatedStorage(Integer allocatedStorage); /** *

                                          * The compute and memory capacity of the DB instance, for example db.m5.large. Not all DB instance * classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of * DB instance classes, and availability for your engine, see DB instance * classes in the Amazon RDS User Guide or Aurora DB * instance classes in the Amazon Aurora User Guide. *

                                          * * @param dbInstanceClass * The compute and memory capacity of the DB instance, for example db.m5.large. Not all DB * instance classes are available in all Amazon Web Services Regions, or for all database engines. For * the full list of DB instance classes, and availability for your engine, see DB * instance classes in the Amazon RDS User Guide or Aurora DB instance classes in the Amazon Aurora User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbInstanceClass(String dbInstanceClass); /** *

                                          * The database engine to use for this DB instance. *

                                          *

                                          * Not every database engine is available in every Amazon Web Services Region. *

                                          *

                                          * Valid Values: *

                                          *
                                            *
                                          • *

                                            * aurora-mysql (for Aurora MySQL DB instances) *

                                            *
                                          • *
                                          • *

                                            * aurora-postgresql (for Aurora PostgreSQL DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-ee (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-ee-cdb (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-se2 (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-se2-cdb (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-ee (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-se (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-web (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-dev (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * db2-ae *

                                            *
                                          • *
                                          • *

                                            * db2-se *

                                            *
                                          • *
                                          • *

                                            * mariadb *

                                            *
                                          • *
                                          • *

                                            * mysql *

                                            *
                                          • *
                                          • *

                                            * oracle-ee *

                                            *
                                          • *
                                          • *

                                            * oracle-ee-cdb *

                                            *
                                          • *
                                          • *

                                            * oracle-se2 *

                                            *
                                          • *
                                          • *

                                            * oracle-se2-cdb *

                                            *
                                          • *
                                          • *

                                            * postgres *

                                            *
                                          • *
                                          • *

                                            * sqlserver-ee *

                                            *
                                          • *
                                          • *

                                            * sqlserver-se *

                                            *
                                          • *
                                          • *

                                            * sqlserver-ex *

                                            *
                                          • *
                                          • *

                                            * sqlserver-web *

                                            *
                                          • *
                                          * * @param engine * The database engine to use for this DB instance.

                                          *

                                          * Not every database engine is available in every Amazon Web Services Region. *

                                          *

                                          * Valid Values: *

                                          *
                                            *
                                          • *

                                            * aurora-mysql (for Aurora MySQL DB instances) *

                                            *
                                          • *
                                          • *

                                            * aurora-postgresql (for Aurora PostgreSQL DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-ee (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-ee-cdb (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-se2 (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-oracle-se2-cdb (for RDS Custom for Oracle DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-ee (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-se (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-web (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * custom-sqlserver-dev (for RDS Custom for SQL Server DB instances) *

                                            *
                                          • *
                                          • *

                                            * db2-ae *

                                            *
                                          • *
                                          • *

                                            * db2-se *

                                            *
                                          • *
                                          • *

                                            * mariadb *

                                            *
                                          • *
                                          • *

                                            * mysql *

                                            *
                                          • *
                                          • *

                                            * oracle-ee *

                                            *
                                          • *
                                          • *

                                            * oracle-ee-cdb *

                                            *
                                          • *
                                          • *

                                            * oracle-se2 *

                                            *
                                          • *
                                          • *

                                            * oracle-se2-cdb *

                                            *
                                          • *
                                          • *

                                            * postgres *

                                            *
                                          • *
                                          • *

                                            * sqlserver-ee *

                                            *
                                          • *
                                          • *

                                            * sqlserver-se *

                                            *
                                          • *
                                          • *

                                            * sqlserver-ex *

                                            *
                                          • *
                                          • *

                                            * sqlserver-web *

                                            *
                                          • * @return Returns a reference to this object so that method calls can be chained together. */ Builder engine(String engine); /** *

                                            * The name for the master user. *

                                            *

                                            * This setting doesn't apply to Amazon Aurora DB instances. The name for the master user is managed by the DB * cluster. *

                                            *

                                            * This setting is required for RDS DB instances. *

                                            *

                                            * Constraints: *

                                            *
                                              *
                                            • *

                                              * Must be 1 to 16 letters, numbers, or underscores. *

                                              *
                                            • *
                                            • *

                                              * First character must be a letter. *

                                              *
                                            • *
                                            • *

                                              * Can't be a reserved word for the chosen database engine. *

                                              *
                                            • *
                                            * * @param masterUsername * The name for the master user.

                                            *

                                            * This setting doesn't apply to Amazon Aurora DB instances. The name for the master user is managed by * the DB cluster. *

                                            *

                                            * This setting is required for RDS DB instances. *

                                            *

                                            * Constraints: *

                                            *
                                              *
                                            • *

                                              * Must be 1 to 16 letters, numbers, or underscores. *

                                              *
                                            • *
                                            • *

                                              * First character must be a letter. *

                                              *
                                            • *
                                            • *

                                              * Can't be a reserved word for the chosen database engine. *

                                              *
                                            • * @return Returns a reference to this object so that method calls can be chained together. */ Builder masterUsername(String masterUsername); /** *

                                              * The password for the master user. *

                                              *

                                              * This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed by the * DB cluster. *

                                              *

                                              * Constraints: *

                                              *
                                                *
                                              • *

                                                * Can't be specified if ManageMasterUserPassword is turned on. *

                                                *
                                              • *
                                              • *

                                                * Can include any printable ASCII character except "/", * """, or "@". For RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) character. *

                                                *
                                              • *
                                              *

                                              * Length Constraints: *

                                              *
                                                *
                                              • *

                                                * RDS for Db2 - Must contain from 8 to 255 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for MariaDB - Must contain from 8 to 41 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for MySQL - Must contain from 8 to 41 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for Oracle - Must contain from 8 to 30 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for PostgreSQL - Must contain from 8 to 128 characters. *

                                                *
                                              • *
                                              * * @param masterUserPassword * The password for the master user.

                                              *

                                              * This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed * by the DB cluster. *

                                              *

                                              * Constraints: *

                                              *
                                                *
                                              • *

                                                * Can't be specified if ManageMasterUserPassword is turned on. *

                                                *
                                              • *
                                              • *

                                                * Can include any printable ASCII character except "/", * """, or "@". For RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) * character. *

                                                *
                                              • *
                                              *

                                              * Length Constraints: *

                                              *
                                                *
                                              • *

                                                * RDS for Db2 - Must contain from 8 to 255 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for MariaDB - Must contain from 8 to 41 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for MySQL - Must contain from 8 to 41 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for Oracle - Must contain from 8 to 30 characters. *

                                                *
                                              • *
                                              • *

                                                * RDS for PostgreSQL - Must contain from 8 to 128 characters. *

                                                *
                                              • * @return Returns a reference to this object so that method calls can be chained together. */ Builder masterUserPassword(String masterUserPassword); /** *

                                                * A list of DB security groups to associate with this DB instance. *

                                                *

                                                * This setting applies to the legacy EC2-Classic platform, which is no longer used to create new DB instances. * Use the VpcSecurityGroupIds setting instead. *

                                                * * @param dbSecurityGroups * A list of DB security groups to associate with this DB instance.

                                                *

                                                * This setting applies to the legacy EC2-Classic platform, which is no longer used to create new DB * instances. Use the VpcSecurityGroupIds setting instead. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbSecurityGroups(Collection dbSecurityGroups); /** *

                                                * A list of DB security groups to associate with this DB instance. *

                                                *

                                                * This setting applies to the legacy EC2-Classic platform, which is no longer used to create new DB instances. * Use the VpcSecurityGroupIds setting instead. *

                                                * * @param dbSecurityGroups * A list of DB security groups to associate with this DB instance.

                                                *

                                                * This setting applies to the legacy EC2-Classic platform, which is no longer used to create new DB * instances. Use the VpcSecurityGroupIds setting instead. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbSecurityGroups(String... dbSecurityGroups); /** *

                                                * A list of Amazon EC2 VPC security groups to associate with this DB instance. *

                                                *

                                                * This setting doesn't apply to Amazon Aurora DB instances. The associated list of EC2 VPC security groups is * managed by the DB cluster. *

                                                *

                                                * Default: The default EC2 VPC security group for the DB subnet group's VPC. *

                                                * * @param vpcSecurityGroupIds * A list of Amazon EC2 VPC security groups to associate with this DB instance.

                                                *

                                                * This setting doesn't apply to Amazon Aurora DB instances. The associated list of EC2 VPC security * groups is managed by the DB cluster. *

                                                *

                                                * Default: The default EC2 VPC security group for the DB subnet group's VPC. * @return Returns a reference to this object so that method calls can be chained together. */ Builder vpcSecurityGroupIds(Collection vpcSecurityGroupIds); /** *

                                                * A list of Amazon EC2 VPC security groups to associate with this DB instance. *

                                                *

                                                * This setting doesn't apply to Amazon Aurora DB instances. The associated list of EC2 VPC security groups is * managed by the DB cluster. *

                                                *

                                                * Default: The default EC2 VPC security group for the DB subnet group's VPC. *

                                                * * @param vpcSecurityGroupIds * A list of Amazon EC2 VPC security groups to associate with this DB instance.

                                                *

                                                * This setting doesn't apply to Amazon Aurora DB instances. The associated list of EC2 VPC security * groups is managed by the DB cluster. *

                                                *

                                                * Default: The default EC2 VPC security group for the DB subnet group's VPC. * @return Returns a reference to this object so that method calls can be chained together. */ Builder vpcSecurityGroupIds(String... vpcSecurityGroupIds); /** *

                                                * The Availability Zone (AZ) where the database will be created. For information on Amazon Web Services Regions * and Availability Zones, see Regions and Availability Zones. *

                                                *

                                                * For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability Zones. * Specify one of these Availability Zones. Aurora automatically chooses an appropriate Availability Zone if you * don't specify one. *

                                                *

                                                * Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *

                                                *

                                                * Constraints: *

                                                *
                                                  *
                                                • *

                                                  * The AvailabilityZone parameter can't be specified if the DB instance is a Multi-AZ deployment. *

                                                  *
                                                • *
                                                • *

                                                  * The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint. *

                                                  *
                                                • *
                                                *

                                                * Example: us-east-1d *

                                                * * @param availabilityZone * The Availability Zone (AZ) where the database will be created. For information on Amazon Web Services * Regions and Availability Zones, see Regions and Availability Zones.

                                                *

                                                * For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability * Zones. Specify one of these Availability Zones. Aurora automatically chooses an appropriate * Availability Zone if you don't specify one. *

                                                *

                                                * Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *

                                                *

                                                * Constraints: *

                                                *
                                                  *
                                                • *

                                                  * The AvailabilityZone parameter can't be specified if the DB instance is a Multi-AZ * deployment. *

                                                  *
                                                • *
                                                • *

                                                  * The specified Availability Zone must be in the same Amazon Web Services Region as the current * endpoint. *

                                                  *
                                                • *
                                                *

                                                * Example: us-east-1d * @return Returns a reference to this object so that method calls can be chained together. */ Builder availabilityZone(String availabilityZone); /** *

                                                * A DB subnet group to associate with this DB instance. *

                                                *

                                                * Constraints: *

                                                *
                                                  *
                                                • *

                                                  * Must match the name of an existing DB subnet group. *

                                                  *
                                                • *
                                                *

                                                * Example: mydbsubnetgroup *

                                                * * @param dbSubnetGroupName * A DB subnet group to associate with this DB instance.

                                                *

                                                * Constraints: *

                                                *
                                                  *
                                                • *

                                                  * Must match the name of an existing DB subnet group. *

                                                  *
                                                • *
                                                *

                                                * Example: mydbsubnetgroup * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbSubnetGroupName(String dbSubnetGroupName); /** *

                                                * The time range each week during which system maintenance can occur. For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide. *

                                                *

                                                * The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web * Services Region, occurring on a random day of the week. *

                                                *

                                                * Constraints: *

                                                *
                                                  *
                                                • *

                                                  * Must be in the format ddd:hh24:mi-ddd:hh24:mi. *

                                                  *
                                                • *
                                                • *

                                                  * The day values must be mon | tue | wed | thu | fri | sat | sun. *

                                                  *
                                                • *
                                                • *

                                                  * Must be in Universal Coordinated Time (UTC). *

                                                  *
                                                • *
                                                • *

                                                  * Must not conflict with the preferred backup window. *

                                                  *
                                                • *
                                                • *

                                                  * Must be at least 30 minutes. *

                                                  *
                                                • *
                                                * * @param preferredMaintenanceWindow * The time range each week during which system maintenance can occur. For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

                                                *

                                                * The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web * Services Region, occurring on a random day of the week. *

                                                *

                                                * Constraints: *

                                                *
                                                  *
                                                • *

                                                  * Must be in the format ddd:hh24:mi-ddd:hh24:mi. *

                                                  *
                                                • *
                                                • *

                                                  * The day values must be mon | tue | wed | thu | fri | sat | sun. *

                                                  *
                                                • *
                                                • *

                                                  * Must be in Universal Coordinated Time (UTC). *

                                                  *
                                                • *
                                                • *

                                                  * Must not conflict with the preferred backup window. *

                                                  *
                                                • *
                                                • *

                                                  * Must be at least 30 minutes. *

                                                  *
                                                • * @return Returns a reference to this object so that method calls can be chained together. */ Builder preferredMaintenanceWindow(String preferredMaintenanceWindow); /** *

                                                  * The name of the DB parameter group to associate with this DB instance. If you don't specify a value, then * Amazon RDS uses the default DB parameter group for the specified DB engine and version. *

                                                  *

                                                  * This setting doesn't apply to RDS Custom DB instances. *

                                                  *

                                                  * Constraints: *

                                                  *
                                                    *
                                                  • *

                                                    * Must be 1 to 255 letters, numbers, or hyphens. *

                                                    *
                                                  • *
                                                  • *

                                                    * The first character must be a letter. *

                                                    *
                                                  • *
                                                  • *

                                                    * Can't end with a hyphen or contain two consecutive hyphens. *

                                                    *
                                                  • *
                                                  * * @param dbParameterGroupName * The name of the DB parameter group to associate with this DB instance. If you don't specify a value, * then Amazon RDS uses the default DB parameter group for the specified DB engine and version.

                                                  *

                                                  * This setting doesn't apply to RDS Custom DB instances. *

                                                  *

                                                  * Constraints: *

                                                  *
                                                    *
                                                  • *

                                                    * Must be 1 to 255 letters, numbers, or hyphens. *

                                                    *
                                                  • *
                                                  • *

                                                    * The first character must be a letter. *

                                                    *
                                                  • *
                                                  • *

                                                    * Can't end with a hyphen or contain two consecutive hyphens. *

                                                    *
                                                  • * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbParameterGroupName(String dbParameterGroupName); /** *

                                                    * The number of days for which automated backups are retained. Setting this parameter to a positive number * enables backups. Setting this parameter to 0 disables automated backups. *

                                                    *

                                                    * This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is * managed by the DB cluster. *

                                                    *

                                                    * Default: 1 *

                                                    *

                                                    * Constraints: *

                                                    *
                                                      *
                                                    • *

                                                      * Must be a value from 0 to 35. *

                                                      *
                                                    • *
                                                    • *

                                                      * Can't be set to 0 if the DB instance is a source to read replicas. *

                                                      *
                                                    • *
                                                    • *

                                                      * Can't be set to 0 for an RDS Custom for Oracle DB instance. *

                                                      *
                                                    • *
                                                    * * @param backupRetentionPeriod * The number of days for which automated backups are retained. Setting this parameter to a positive * number enables backups. Setting this parameter to 0 disables automated backups.

                                                    *

                                                    * This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups * is managed by the DB cluster. *

                                                    *

                                                    * Default: 1 *

                                                    *

                                                    * Constraints: *

                                                    *
                                                      *
                                                    • *

                                                      * Must be a value from 0 to 35. *

                                                      *
                                                    • *
                                                    • *

                                                      * Can't be set to 0 if the DB instance is a source to read replicas. *

                                                      *
                                                    • *
                                                    • *

                                                      * Can't be set to 0 for an RDS Custom for Oracle DB instance. *

                                                      *
                                                    • * @return Returns a reference to this object so that method calls can be chained together. */ Builder backupRetentionPeriod(Integer backupRetentionPeriod); /** *

                                                      * The daily time range during which automated backups are created if automated backups are enabled, using the * BackupRetentionPeriod parameter. The default is a 30-minute window selected at random from an * 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide. *

                                                      *

                                                      * This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups * is managed by the DB cluster. *

                                                      *

                                                      * Constraints: *

                                                      *
                                                        *
                                                      • *

                                                        * Must be in the format hh24:mi-hh24:mi. *

                                                        *
                                                      • *
                                                      • *

                                                        * Must be in Universal Coordinated Time (UTC). *

                                                        *
                                                      • *
                                                      • *

                                                        * Must not conflict with the preferred maintenance window. *

                                                        *
                                                      • *
                                                      • *

                                                        * Must be at least 30 minutes. *

                                                        *
                                                      • *
                                                      * * @param preferredBackupWindow * The daily time range during which automated backups are created if automated backups are enabled, * using the BackupRetentionPeriod parameter. The default is a 30-minute window selected at * random from an 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide.

                                                      *

                                                      * This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated * backups is managed by the DB cluster. *

                                                      *

                                                      * Constraints: *

                                                      *
                                                        *
                                                      • *

                                                        * Must be in the format hh24:mi-hh24:mi. *

                                                        *
                                                      • *
                                                      • *

                                                        * Must be in Universal Coordinated Time (UTC). *

                                                        *
                                                      • *
                                                      • *

                                                        * Must not conflict with the preferred maintenance window. *

                                                        *
                                                      • *
                                                      • *

                                                        * Must be at least 30 minutes. *

                                                        *
                                                      • * @return Returns a reference to this object so that method calls can be chained together. */ Builder preferredBackupWindow(String preferredBackupWindow); /** *

                                                        * The port number on which the database accepts connections. *

                                                        *

                                                        * This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster. *

                                                        *

                                                        * Valid Values: 1150-65535 *

                                                        *

                                                        * Default: *

                                                        *
                                                          *
                                                        • *

                                                          * RDS for Db2 - 50000 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for MariaDB - 3306 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for Microsoft SQL Server - 1433 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for MySQL - 3306 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for Oracle - 1521 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for PostgreSQL - 5432 *

                                                          *
                                                        • *
                                                        *

                                                        * Constraints: *

                                                        *
                                                          *
                                                        • *

                                                          * For RDS for Microsoft SQL Server, the value can't be 1234, 1434, 3260, * 3343, 3389, 47001, or 49152-49156. *

                                                          *
                                                        • *
                                                        * * @param port * The port number on which the database accepts connections.

                                                        *

                                                        * This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster. *

                                                        *

                                                        * Valid Values: 1150-65535 *

                                                        *

                                                        * Default: *

                                                        *
                                                          *
                                                        • *

                                                          * RDS for Db2 - 50000 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for MariaDB - 3306 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for Microsoft SQL Server - 1433 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for MySQL - 3306 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for Oracle - 1521 *

                                                          *
                                                        • *
                                                        • *

                                                          * RDS for PostgreSQL - 5432 *

                                                          *
                                                        • *
                                                        *

                                                        * Constraints: *

                                                        *
                                                          *
                                                        • *

                                                          * For RDS for Microsoft SQL Server, the value can't be 1234, 1434, * 3260, 3343, 3389, 47001, or * 49152-49156. *

                                                          *
                                                        • * @return Returns a reference to this object so that method calls can be chained together. */ Builder port(Integer port); /** *

                                                          * Specifies whether the DB instance is a Multi-AZ deployment. You can't set the AvailabilityZone * parameter if the DB instance is a Multi-AZ deployment. *

                                                          *

                                                          * This setting doesn't apply to the following DB instances: *

                                                          *
                                                            *
                                                          • *

                                                            * Amazon Aurora (DB instance Availability Zones (AZs) are managed by the DB cluster.) *

                                                            *
                                                          • *
                                                          • *

                                                            * RDS Custom *

                                                            *
                                                          • *
                                                          * * @param multiAZ * Specifies whether the DB instance is a Multi-AZ deployment. You can't set the * AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

                                                          *

                                                          * This setting doesn't apply to the following DB instances: *

                                                          *
                                                            *
                                                          • *

                                                            * Amazon Aurora (DB instance Availability Zones (AZs) are managed by the DB cluster.) *

                                                            *
                                                          • *
                                                          • *

                                                            * RDS Custom *

                                                            *
                                                          • * @return Returns a reference to this object so that method calls can be chained together. */ Builder multiAZ(Boolean multiAZ); /** *

                                                            * The version number of the database engine to use. *

                                                            *

                                                            * This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine the DB * instance uses is managed by the DB cluster. *

                                                            *

                                                            * For a list of valid engine versions, use the DescribeDBEngineVersions operation. *

                                                            *

                                                            * The following are the database engines and links to information about the major and minor versions that are * available with Amazon RDS. Not every database engine is available for every Amazon Web Services Region. *

                                                            *
                                                            *
                                                            Amazon RDS Custom for Oracle
                                                            *
                                                            *

                                                            * A custom engine version (CEV) that you have previously created. This setting is required for RDS Custom for * Oracle. The CEV name has the following format: 19.customized_string. A valid CEV name is * 19.my_cev1. For more information, see * Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            Amazon RDS Custom for SQL Server
                                                            *
                                                            *

                                                            * See RDS Custom * for SQL Server general requirements in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for Db2
                                                            *
                                                            *

                                                            * For information, see Db2 on * Amazon RDS versions in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for MariaDB
                                                            *
                                                            *

                                                            * For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for Microsoft SQL Server
                                                            *
                                                            *

                                                            * For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for MySQL
                                                            *
                                                            *

                                                            * For information, see MySQL on Amazon RDS versions in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for Oracle
                                                            *
                                                            *

                                                            * For information, see Oracle * Database Engine release notes in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for PostgreSQL
                                                            *
                                                            *

                                                            * For information, see Amazon * RDS for PostgreSQL versions and extensions in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            * * @param engineVersion * The version number of the database engine to use.

                                                            *

                                                            * This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine * the DB instance uses is managed by the DB cluster. *

                                                            *

                                                            * For a list of valid engine versions, use the DescribeDBEngineVersions operation. *

                                                            *

                                                            * The following are the database engines and links to information about the major and minor versions * that are available with Amazon RDS. Not every database engine is available for every Amazon Web * Services Region. *

                                                            *
                                                            *
                                                            Amazon RDS Custom for Oracle
                                                            *
                                                            *

                                                            * A custom engine version (CEV) that you have previously created. This setting is required for RDS * Custom for Oracle. The CEV name has the following format: 19.customized_string. A valid CEV * name is 19.my_cev1. For more information, see Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            Amazon RDS Custom for SQL Server
                                                            *
                                                            *

                                                            * See RDS * Custom for SQL Server general requirements in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for Db2
                                                            *
                                                            *

                                                            * For information, see Db2 on Amazon RDS versions in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for MariaDB
                                                            *
                                                            *

                                                            * For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for Microsoft SQL Server
                                                            *
                                                            *

                                                            * For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for MySQL
                                                            *
                                                            *

                                                            * For information, see MySQL on Amazon RDS versions in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for Oracle
                                                            *
                                                            *

                                                            * For information, see Oracle Database Engine release notes in the Amazon RDS User Guide. *

                                                            *
                                                            *
                                                            RDS for PostgreSQL
                                                            *
                                                            *

                                                            * For information, see Amazon RDS for PostgreSQL versions and extensions in the Amazon RDS User Guide. *

                                                            *
                                                            * @return Returns a reference to this object so that method calls can be chained together. */ Builder engineVersion(String engineVersion); /** *

                                                            * Specifies whether minor engine upgrades are applied automatically to the DB instance during the maintenance * window. By default, minor engine upgrades are applied automatically. *

                                                            *

                                                            * If you create an RDS Custom DB instance, you must set AutoMinorVersionUpgrade to * false. *

                                                            * * @param autoMinorVersionUpgrade * Specifies whether minor engine upgrades are applied automatically to the DB instance during the * maintenance window. By default, minor engine upgrades are applied automatically.

                                                            *

                                                            * If you create an RDS Custom DB instance, you must set AutoMinorVersionUpgrade to * false. * @return Returns a reference to this object so that method calls can be chained together. */ Builder autoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade); /** *

                                                            * The license model information for this DB instance. *

                                                            * *

                                                            * License models for RDS for Db2 require additional configuration. The Bring Your Own License (BYOL) model * requires a custom parameter group and an Amazon Web Services License Manager self-managed license. The Db2 * license through Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace * subscription. For more information, see Amazon RDS for Db2 licensing * options in the Amazon RDS User Guide. *

                                                            *

                                                            * The default for RDS for Db2 is bring-your-own-license. *

                                                            *
                                                            *

                                                            * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                            *

                                                            * Valid Values: *

                                                            *
                                                              *
                                                            • *

                                                              * RDS for Db2 - bring-your-own-license | marketplace-license *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for MariaDB - general-public-license *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for Microsoft SQL Server - license-included *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for MySQL - general-public-license *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for Oracle - bring-your-own-license | license-included *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for PostgreSQL - postgresql-license *

                                                              *
                                                            • *
                                                            * * @param licenseModel * The license model information for this DB instance.

                                                            *

                                                            * License models for RDS for Db2 require additional configuration. The Bring Your Own License (BYOL) * model requires a custom parameter group and an Amazon Web Services License Manager self-managed * license. The Db2 license through Amazon Web Services Marketplace model requires an Amazon Web Services * Marketplace subscription. For more information, see Amazon RDS for Db2 * licensing options in the Amazon RDS User Guide. *

                                                            *

                                                            * The default for RDS for Db2 is bring-your-own-license. *

                                                            *
                                                            *

                                                            * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                            *

                                                            * Valid Values: *

                                                            *
                                                              *
                                                            • *

                                                              * RDS for Db2 - bring-your-own-license | marketplace-license *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for MariaDB - general-public-license *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for Microsoft SQL Server - license-included *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for MySQL - general-public-license *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for Oracle - bring-your-own-license | license-included *

                                                              *
                                                            • *
                                                            • *

                                                              * RDS for PostgreSQL - postgresql-license *

                                                              *
                                                            • * @return Returns a reference to this object so that method calls can be chained together. */ Builder licenseModel(String licenseModel); /** *

                                                              * The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB * instance. For information about valid IOPS values, see Amazon RDS DB instance * storage in the Amazon RDS User Guide. *

                                                              *

                                                              * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                                                              *

                                                              * Constraints: *

                                                              *
                                                                *
                                                              • *

                                                                * For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage * amount for the DB instance. *

                                                                *
                                                              • *
                                                              • *

                                                                * For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance. *

                                                                *
                                                              • *
                                                              * * @param iops * The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB * instance. For information about valid IOPS values, see Amazon RDS DB instance * storage in the Amazon RDS User Guide.

                                                              *

                                                              * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                                                              *

                                                              * Constraints: *

                                                              *
                                                                *
                                                              • *

                                                                * For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the * storage amount for the DB instance. *

                                                                *
                                                              • *
                                                              • *

                                                                * For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB * instance. *

                                                                *
                                                              • * @return Returns a reference to this object so that method calls can be chained together. */ Builder iops(Integer iops); /** *

                                                                * The option group to associate the DB instance with. *

                                                                *

                                                                * Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option * group. Also, that option group can't be removed from a DB instance after it is associated with a DB instance. *

                                                                *

                                                                * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                                * * @param optionGroupName * The option group to associate the DB instance with.

                                                                *

                                                                * Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an * option group. Also, that option group can't be removed from a DB instance after it is associated with * a DB instance. *

                                                                *

                                                                * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder optionGroupName(String optionGroupName); /** *

                                                                * For supported engines, the character set (CharacterSet) to associate the DB instance with. *

                                                                *

                                                                * This setting doesn't apply to the following DB instances: *

                                                                *
                                                                  *
                                                                • *

                                                                  * Amazon Aurora - The character set is managed by the DB cluster. For more information, see * CreateDBCluster. *

                                                                  *
                                                                • *
                                                                • *

                                                                  * RDS Custom - However, if you need to change the character set, you can change it on the database itself. *

                                                                  *
                                                                • *
                                                                * * @param characterSetName * For supported engines, the character set (CharacterSet) to associate the DB instance * with.

                                                                *

                                                                * This setting doesn't apply to the following DB instances: *

                                                                *
                                                                  *
                                                                • *

                                                                  * Amazon Aurora - The character set is managed by the DB cluster. For more information, see * CreateDBCluster. *

                                                                  *
                                                                • *
                                                                • *

                                                                  * RDS Custom - However, if you need to change the character set, you can change it on the database * itself. *

                                                                  *
                                                                • * @return Returns a reference to this object so that method calls can be chained together. */ Builder characterSetName(String characterSetName); /** *

                                                                  * The name of the NCHAR character set for the Oracle DB instance. *

                                                                  *

                                                                  * This setting doesn't apply to RDS Custom DB instances. *

                                                                  * * @param ncharCharacterSetName * The name of the NCHAR character set for the Oracle DB instance.

                                                                  *

                                                                  * This setting doesn't apply to RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ncharCharacterSetName(String ncharCharacterSetName); /** *

                                                                  * Specifies whether the DB instance is publicly accessible. *

                                                                  *

                                                                  * When the DB instance is publicly accessible and you connect from outside of the DB instance's virtual private * cloud (VPC), its Domain Name System (DNS) endpoint resolves to the public IP address. When you connect from * within the same VPC as the DB instance, the endpoint resolves to the private IP address. Access to the DB * instance is ultimately controlled by the security group it uses. That public access is not permitted if the * security group assigned to the DB instance doesn't permit it. *

                                                                  *

                                                                  * When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves * to a private IP address. *

                                                                  *

                                                                  * Default: The default behavior varies depending on whether DBSubnetGroupName is specified. *

                                                                  *

                                                                  * If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, the * following applies: *

                                                                  *
                                                                    *
                                                                  • *

                                                                    * If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB instance is * private. *

                                                                    *
                                                                  • *
                                                                  • *

                                                                    * If the default VPC in the target Region has an internet gateway attached to it, the DB instance is public. *

                                                                    *
                                                                  • *
                                                                  *

                                                                  * If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the * following applies: *

                                                                  *
                                                                    *
                                                                  • *

                                                                    * If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB instance is * private. *

                                                                    *
                                                                  • *
                                                                  • *

                                                                    * If the subnets are part of a VPC that has an internet gateway attached to it, the DB instance is public. *

                                                                    *
                                                                  • *
                                                                  * * @param publiclyAccessible * Specifies whether the DB instance is publicly accessible.

                                                                  *

                                                                  * When the DB instance is publicly accessible and you connect from outside of the DB instance's virtual * private cloud (VPC), its Domain Name System (DNS) endpoint resolves to the public IP address. When you * connect from within the same VPC as the DB instance, the endpoint resolves to the private IP address. * Access to the DB instance is ultimately controlled by the security group it uses. That public access * is not permitted if the security group assigned to the DB instance doesn't permit it. *

                                                                  *

                                                                  * When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that * resolves to a private IP address. *

                                                                  *

                                                                  * Default: The default behavior varies depending on whether DBSubnetGroupName is specified. *

                                                                  *

                                                                  * If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't * specified, the following applies: *

                                                                  *
                                                                    *
                                                                  • *

                                                                    * If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB * instance is private. *

                                                                    *
                                                                  • *
                                                                  • *

                                                                    * If the default VPC in the target Region has an internet gateway attached to it, the DB instance is * public. *

                                                                    *
                                                                  • *
                                                                  *

                                                                  * If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, * the following applies: *

                                                                  *
                                                                    *
                                                                  • *

                                                                    * If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB instance * is private. *

                                                                    *
                                                                  • *
                                                                  • *

                                                                    * If the subnets are part of a VPC that has an internet gateway attached to it, the DB instance is * public. *

                                                                    *
                                                                  • * @return Returns a reference to this object so that method calls can be chained together. */ Builder publiclyAccessible(Boolean publiclyAccessible); /** *

                                                                    * Tags to assign to the DB instance. *

                                                                    * * @param tags * Tags to assign to the DB instance. * @return Returns a reference to this object so that method calls can be chained together. */ Builder tags(Collection tags); /** *

                                                                    * Tags to assign to the DB instance. *

                                                                    * * @param tags * Tags to assign to the DB instance. * @return Returns a reference to this object so that method calls can be chained together. */ Builder tags(Tag... tags); /** *

                                                                    * Tags to assign to the DB instance. *

                                                                    * This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.Tag.Builder} avoiding the need to create one manually via * {@link software.amazon.awssdk.services.rds.model.Tag#builder()}. * *

                                                                    * When the {@link Consumer} completes, {@link software.amazon.awssdk.services.rds.model.Tag.Builder#build()} is * called immediately and its result is passed to {@link #tags(List)}. * * @param tags * a consumer that will call methods on {@link software.amazon.awssdk.services.rds.model.Tag.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #tags(java.util.Collection) */ Builder tags(Consumer... tags); /** *

                                                                    * The identifier of the DB cluster that this DB instance will belong to. *

                                                                    *

                                                                    * This setting doesn't apply to RDS Custom DB instances. *

                                                                    * * @param dbClusterIdentifier * The identifier of the DB cluster that this DB instance will belong to.

                                                                    *

                                                                    * This setting doesn't apply to RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterIdentifier(String dbClusterIdentifier); /** *

                                                                    * The storage type to associate with the DB instance. *

                                                                    *

                                                                    * If you specify io1, io2, or gp3, you must also include a value for the * Iops parameter. *

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                                                                    *

                                                                    * Valid Values: gp2 | gp3 | io1 | io2 | standard *

                                                                    *

                                                                    * Default: io1, if the Iops parameter is specified. Otherwise, gp2. *

                                                                    * * @param storageType * The storage type to associate with the DB instance.

                                                                    *

                                                                    * If you specify io1, io2, or gp3, you must also include a value * for the Iops parameter. *

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. *

                                                                    *

                                                                    * Valid Values: gp2 | gp3 | io1 | io2 | standard *

                                                                    *

                                                                    * Default: io1, if the Iops parameter is specified. Otherwise, * gp2. * @return Returns a reference to this object so that method calls can be chained together. */ Builder storageType(String storageType); /** *

                                                                    * The ARN from the key store with which to associate the instance for TDE encryption. *

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                                    * * @param tdeCredentialArn * The ARN from the key store with which to associate the instance for TDE encryption.

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder tdeCredentialArn(String tdeCredentialArn); /** *

                                                                    * The password for the given ARN from the key store in order to access the device. *

                                                                    *

                                                                    * This setting doesn't apply to RDS Custom DB instances. *

                                                                    * * @param tdeCredentialPassword * The password for the given ARN from the key store in order to access the device.

                                                                    *

                                                                    * This setting doesn't apply to RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder tdeCredentialPassword(String tdeCredentialPassword); /** *

                                                                    * Specifes whether the DB instance is encrypted. By default, it isn't encrypted. *

                                                                    *

                                                                    * For RDS Custom DB instances, either enable this setting or leave it unset. Otherwise, Amazon RDS reports an * error. *

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora DB instances. The encryption for DB instances is managed by the * DB cluster. *

                                                                    * * @param storageEncrypted * Specifes whether the DB instance is encrypted. By default, it isn't encrypted.

                                                                    *

                                                                    * For RDS Custom DB instances, either enable this setting or leave it unset. Otherwise, Amazon RDS * reports an error. *

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora DB instances. The encryption for DB instances is managed * by the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder storageEncrypted(Boolean storageEncrypted); /** *

                                                                    * The Amazon Web Services KMS key identifier for an encrypted DB instance. *

                                                                    *

                                                                    * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. * To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. *

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora DB instances. The Amazon Web Services KMS key identifier is * managed by the DB cluster. For more information, see CreateDBCluster. *

                                                                    *

                                                                    * If StorageEncrypted is enabled, and you do not specify a value for the KmsKeyId * parameter, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services * account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services * Region. *

                                                                    *

                                                                    * For Amazon RDS Custom, a KMS key is required for DB instances. For most RDS engines, if you leave this * parameter empty while enabling StorageEncrypted, the engine uses the default KMS key. However, * RDS Custom doesn't use the default key when this parameter is empty. You must explicitly specify a key. *

                                                                    * * @param kmsKeyId * The Amazon Web Services KMS key identifier for an encrypted DB instance.

                                                                    *

                                                                    * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the * KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias * ARN. *

                                                                    *

                                                                    * This setting doesn't apply to Amazon Aurora DB instances. The Amazon Web Services KMS key identifier * is managed by the DB cluster. For more information, see CreateDBCluster. *

                                                                    *

                                                                    * If StorageEncrypted is enabled, and you do not specify a value for the * KmsKeyId parameter, then Amazon RDS uses your default KMS key. There is a default KMS key * for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key * for each Amazon Web Services Region. *

                                                                    *

                                                                    * For Amazon RDS Custom, a KMS key is required for DB instances. For most RDS engines, if you leave this * parameter empty while enabling StorageEncrypted, the engine uses the default KMS key. * However, RDS Custom doesn't use the default key when this parameter is empty. You must explicitly * specify a key. * @return Returns a reference to this object so that method calls can be chained together. */ Builder kmsKeyId(String kmsKeyId); /** *

                                                                    * The Active Directory directory ID to create the DB instance in. Currently, you can create only Db2, MySQL, * Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain. *

                                                                    *

                                                                    * For more information, see Kerberos * Authentication in the Amazon RDS User Guide. *

                                                                    *

                                                                    * This setting doesn't apply to the following DB instances: *

                                                                    *
                                                                      *
                                                                    • *

                                                                      * Amazon Aurora (The domain is managed by the DB cluster.) *

                                                                      *
                                                                    • *
                                                                    • *

                                                                      * RDS Custom *

                                                                      *
                                                                    • *
                                                                    * * @param domain * The Active Directory directory ID to create the DB instance in. Currently, you can create only Db2, * MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

                                                                    *

                                                                    * For more information, see Kerberos * Authentication in the Amazon RDS User Guide. *

                                                                    *

                                                                    * This setting doesn't apply to the following DB instances: *

                                                                    *
                                                                      *
                                                                    • *

                                                                      * Amazon Aurora (The domain is managed by the DB cluster.) *

                                                                      *
                                                                    • *
                                                                    • *

                                                                      * RDS Custom *

                                                                      *
                                                                    • * @return Returns a reference to this object so that method calls can be chained together. */ Builder domain(String domain); /** *

                                                                      * The fully qualified domain name (FQDN) of an Active Directory domain. *

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Can't be longer than 64 characters. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: mymanagedADtest.mymanagedAD.mydomain *

                                                                      * * @param domainFqdn * The fully qualified domain name (FQDN) of an Active Directory domain.

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Can't be longer than 64 characters. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: mymanagedADtest.mymanagedAD.mydomain * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainFqdn(String domainFqdn); /** *

                                                                      * The Active Directory organizational unit for your DB instance to join. *

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Must be in the distinguished name format. *

                                                                        *
                                                                      • *
                                                                      • *

                                                                        * Can't be longer than 64 characters. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain *

                                                                      * * @param domainOu * The Active Directory organizational unit for your DB instance to join.

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Must be in the distinguished name format. *

                                                                        *
                                                                      • *
                                                                      • *

                                                                        * Can't be longer than 64 characters. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainOu(String domainOu); /** *

                                                                      * The ARN for the Secrets Manager secret with the credentials for the user joining the domain. *

                                                                      *

                                                                      * Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456 *

                                                                      * * @param domainAuthSecretArn * The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

                                                                      *

                                                                      * Example: * arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456 * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainAuthSecretArn(String domainAuthSecretArn); /** *

                                                                      * The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers. *

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the * primary domain controller for both entries in the list. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: 123.124.125.126,234.235.236.237 *

                                                                      * * @param domainDnsIps * The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of * the primary domain controller for both entries in the list. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: 123.124.125.126,234.235.236.237 * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainDnsIps(Collection domainDnsIps); /** *

                                                                      * The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers. *

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the * primary domain controller for both entries in the list. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: 123.124.125.126,234.235.236.237 *

                                                                      * * @param domainDnsIps * The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.

                                                                      *

                                                                      * Constraints: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of * the primary domain controller for both entries in the list. *

                                                                        *
                                                                      • *
                                                                      *

                                                                      * Example: 123.124.125.126,234.235.236.237 * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainDnsIps(String... domainDnsIps); /** *

                                                                      * Specifies whether to copy tags from the DB instance to snapshots of the DB instance. By default, tags are not * copied. *

                                                                      *

                                                                      * This setting doesn't apply to Amazon Aurora DB instances. Copying tags to snapshots is managed by the DB * cluster. Setting this value for an Aurora DB instance has no effect on the DB cluster setting. *

                                                                      * * @param copyTagsToSnapshot * Specifies whether to copy tags from the DB instance to snapshots of the DB instance. By default, tags * are not copied.

                                                                      *

                                                                      * This setting doesn't apply to Amazon Aurora DB instances. Copying tags to snapshots is managed by the * DB cluster. Setting this value for an Aurora DB instance has no effect on the DB cluster setting. * @return Returns a reference to this object so that method calls can be chained together. */ Builder copyTagsToSnapshot(Boolean copyTagsToSnapshot); /** *

                                                                      * The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. * To disable collection of Enhanced Monitoring metrics, specify 0. *

                                                                      *

                                                                      * If MonitoringRoleArn is specified, then you must set MonitoringInterval to a value * other than 0. *

                                                                      *

                                                                      * This setting doesn't apply to RDS Custom DB instances. *

                                                                      *

                                                                      * Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60 *

                                                                      *

                                                                      * Default: 0 *

                                                                      * * @param monitoringInterval * The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB * instance. To disable collection of Enhanced Monitoring metrics, specify 0.

                                                                      *

                                                                      * If MonitoringRoleArn is specified, then you must set MonitoringInterval to a * value other than 0. *

                                                                      *

                                                                      * This setting doesn't apply to RDS Custom DB instances. *

                                                                      *

                                                                      * Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60 *

                                                                      *

                                                                      * Default: 0 * @return Returns a reference to this object so that method calls can be chained together. */ Builder monitoringInterval(Integer monitoringInterval); /** *

                                                                      * The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch Logs. For * example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, * see Setting Up and Enabling Enhanced Monitoring in the Amazon RDS User Guide. *

                                                                      *

                                                                      * If MonitoringInterval is set to a value other than 0, then you must supply a * MonitoringRoleArn value. *

                                                                      *

                                                                      * This setting doesn't apply to RDS Custom DB instances. *

                                                                      * * @param monitoringRoleArn * The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch * Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a * monitoring role, see Setting Up and Enabling Enhanced Monitoring in the Amazon RDS User Guide.

                                                                      *

                                                                      * If MonitoringInterval is set to a value other than 0, then you must supply a * MonitoringRoleArn value. *

                                                                      *

                                                                      * This setting doesn't apply to RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder monitoringRoleArn(String monitoringRoleArn); /** *

                                                                      * The name of the IAM role to use when making API calls to the Directory Service. *

                                                                      *

                                                                      * This setting doesn't apply to the following DB instances: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Amazon Aurora (The domain is managed by the DB cluster.) *

                                                                        *
                                                                      • *
                                                                      • *

                                                                        * RDS Custom *

                                                                        *
                                                                      • *
                                                                      * * @param domainIAMRoleName * The name of the IAM role to use when making API calls to the Directory Service.

                                                                      *

                                                                      * This setting doesn't apply to the following DB instances: *

                                                                      *
                                                                        *
                                                                      • *

                                                                        * Amazon Aurora (The domain is managed by the DB cluster.) *

                                                                        *
                                                                      • *
                                                                      • *

                                                                        * RDS Custom *

                                                                        *
                                                                      • * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainIAMRoleName(String domainIAMRoleName); /** *

                                                                        * The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of the * existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide. *

                                                                        *

                                                                        * This setting doesn't apply to RDS Custom DB instances. *

                                                                        *

                                                                        * Default: 1 *

                                                                        *

                                                                        * Valid Values: 0 - 15 *

                                                                        * * @param promotionTier * The order of priority in which an Aurora Replica is promoted to the primary instance after a failure * of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide.

                                                                        *

                                                                        * This setting doesn't apply to RDS Custom DB instances. *

                                                                        *

                                                                        * Default: 1 *

                                                                        *

                                                                        * Valid Values: 0 - 15 * @return Returns a reference to this object so that method calls can be chained together. */ Builder promotionTier(Integer promotionTier); /** *

                                                                        * The time zone of the DB instance. The time zone parameter is currently supported only by RDS for Db2 and RDS for SQL Server. *

                                                                        * * @param timezone * The time zone of the DB instance. The time zone parameter is currently supported only by RDS for Db2 and RDS for SQL Server. * @return Returns a reference to this object so that method calls can be chained together. */ Builder timezone(String timezone); /** *

                                                                        * Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to * database accounts. By default, mapping isn't enabled. *

                                                                        *

                                                                        * For more information, see IAM Database * Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide. *

                                                                        *

                                                                        * This setting doesn't apply to the following DB instances: *

                                                                        *
                                                                          *
                                                                        • *

                                                                          * Amazon Aurora (Mapping Amazon Web Services IAM accounts to database accounts is managed by the DB cluster.) *

                                                                          *
                                                                        • *
                                                                        • *

                                                                          * RDS Custom *

                                                                          *
                                                                        • *
                                                                        * * @param enableIAMDatabaseAuthentication * Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) * accounts to database accounts. By default, mapping isn't enabled.

                                                                        *

                                                                        * For more information, see IAM * Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide. *

                                                                        *

                                                                        * This setting doesn't apply to the following DB instances: *

                                                                        *
                                                                          *
                                                                        • *

                                                                          * Amazon Aurora (Mapping Amazon Web Services IAM accounts to database accounts is managed by the DB * cluster.) *

                                                                          *
                                                                        • *
                                                                        • *

                                                                          * RDS Custom *

                                                                          *
                                                                        • * @return Returns a reference to this object so that method calls can be chained together. */ Builder enableIAMDatabaseAuthentication(Boolean enableIAMDatabaseAuthentication); /** *

                                                                          * Specifies whether to enable Performance Insights for the DB instance. For more information, see Using Amazon Performance * Insights in the Amazon RDS User Guide. *

                                                                          *

                                                                          * This setting doesn't apply to RDS Custom DB instances. *

                                                                          * * @param enablePerformanceInsights * Specifies whether to enable Performance Insights for the DB instance. For more information, see Using Amazon * Performance Insights in the Amazon RDS User Guide.

                                                                          *

                                                                          * This setting doesn't apply to RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder enablePerformanceInsights(Boolean enablePerformanceInsights); /** *

                                                                          * The Amazon Web Services KMS key identifier for encryption of Performance Insights data. *

                                                                          *

                                                                          * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *

                                                                          *

                                                                          * If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default * KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account * has a different default KMS key for each Amazon Web Services Region. *

                                                                          *

                                                                          * This setting doesn't apply to RDS Custom DB instances. *

                                                                          * * @param performanceInsightsKMSKeyId * The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

                                                                          *

                                                                          * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the * KMS key. *

                                                                          *

                                                                          * If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your * default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web * Services account has a different default KMS key for each Amazon Web Services Region. *

                                                                          *

                                                                          * This setting doesn't apply to RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder performanceInsightsKMSKeyId(String performanceInsightsKMSKeyId); /** *

                                                                          * The number of days to retain Performance Insights data. *

                                                                          *

                                                                          * This setting doesn't apply to RDS Custom DB instances. *

                                                                          *

                                                                          * Valid Values: *

                                                                          *
                                                                            *
                                                                          • *

                                                                            * 7 *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * * 31), 341 (11 months * 31), 589 (19 months * 31) *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * 731 *

                                                                            *
                                                                          • *
                                                                          *

                                                                          * Default: 7 days *

                                                                          *

                                                                          * If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error. *

                                                                          * * @param performanceInsightsRetentionPeriod * The number of days to retain Performance Insights data.

                                                                          *

                                                                          * This setting doesn't apply to RDS Custom DB instances. *

                                                                          *

                                                                          * Valid Values: *

                                                                          *
                                                                            *
                                                                          • *

                                                                            * 7 *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * month * 31, where month is a number of months from 1-23. Examples: 93 (3 * months * 31), 341 (11 months * 31), 589 (19 months * 31) *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * 731 *

                                                                            *
                                                                          • *
                                                                          *

                                                                          * Default: 7 days *

                                                                          *

                                                                          * If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an * error. * @return Returns a reference to this object so that method calls can be chained together. */ Builder performanceInsightsRetentionPeriod(Integer performanceInsightsRetentionPeriod); /** *

                                                                          * The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide. *

                                                                          *

                                                                          * This setting doesn't apply to the following DB instances: *

                                                                          *
                                                                            *
                                                                          • *

                                                                            * Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.) *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS Custom *

                                                                            *
                                                                          • *
                                                                          *

                                                                          * The following values are valid for each DB engine: *

                                                                          *
                                                                            *
                                                                          • *

                                                                            * RDS for Db2 - diag.log | notify.log *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for MariaDB - audit | error | general | slowquery *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for Microsoft SQL Server - agent | error *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for MySQL - audit | error | general | slowquery *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for Oracle - alert | audit | listener | trace | oemagent *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for PostgreSQL - postgresql | upgrade *

                                                                            *
                                                                          • *
                                                                          * * @param enableCloudwatchLogsExports * The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

                                                                          *

                                                                          * This setting doesn't apply to the following DB instances: *

                                                                          *
                                                                            *
                                                                          • *

                                                                            * Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.) *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS Custom *

                                                                            *
                                                                          • *
                                                                          *

                                                                          * The following values are valid for each DB engine: *

                                                                          *
                                                                            *
                                                                          • *

                                                                            * RDS for Db2 - diag.log | notify.log *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for MariaDB - audit | error | general | slowquery *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for Microsoft SQL Server - agent | error *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for MySQL - audit | error | general | slowquery *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for Oracle - alert | audit | listener | trace | oemagent *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * RDS for PostgreSQL - postgresql | upgrade *

                                                                            *
                                                                          • * @return Returns a reference to this object so that method calls can be chained together. */ Builder enableCloudwatchLogsExports(Collection enableCloudwatchLogsExports); /** *

                                                                            * The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide. *

                                                                            *

                                                                            * This setting doesn't apply to the following DB instances: *

                                                                            *
                                                                              *
                                                                            • *

                                                                              * Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.) *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS Custom *

                                                                              *
                                                                            • *
                                                                            *

                                                                            * The following values are valid for each DB engine: *

                                                                            *
                                                                              *
                                                                            • *

                                                                              * RDS for Db2 - diag.log | notify.log *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for MariaDB - audit | error | general | slowquery *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for Microsoft SQL Server - agent | error *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for MySQL - audit | error | general | slowquery *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for Oracle - alert | audit | listener | trace | oemagent *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for PostgreSQL - postgresql | upgrade *

                                                                              *
                                                                            • *
                                                                            * * @param enableCloudwatchLogsExports * The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

                                                                            *

                                                                            * This setting doesn't apply to the following DB instances: *

                                                                            *
                                                                              *
                                                                            • *

                                                                              * Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.) *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS Custom *

                                                                              *
                                                                            • *
                                                                            *

                                                                            * The following values are valid for each DB engine: *

                                                                            *
                                                                              *
                                                                            • *

                                                                              * RDS for Db2 - diag.log | notify.log *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for MariaDB - audit | error | general | slowquery *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for Microsoft SQL Server - agent | error *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for MySQL - audit | error | general | slowquery *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for Oracle - alert | audit | listener | trace | oemagent *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * RDS for PostgreSQL - postgresql | upgrade *

                                                                              *
                                                                            • * @return Returns a reference to this object so that method calls can be chained together. */ Builder enableCloudwatchLogsExports(String... enableCloudwatchLogsExports); /** *

                                                                              * The number of CPU cores and the number of threads per core for the DB instance class of the DB instance. *

                                                                              *

                                                                              * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                                              * * @param processorFeatures * The number of CPU cores and the number of threads per core for the DB instance class of the DB * instance.

                                                                              *

                                                                              * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder processorFeatures(Collection processorFeatures); /** *

                                                                              * The number of CPU cores and the number of threads per core for the DB instance class of the DB instance. *

                                                                              *

                                                                              * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                                              * * @param processorFeatures * The number of CPU cores and the number of threads per core for the DB instance class of the DB * instance.

                                                                              *

                                                                              * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder processorFeatures(ProcessorFeature... processorFeatures); /** *

                                                                              * The number of CPU cores and the number of threads per core for the DB instance class of the DB instance. *

                                                                              *

                                                                              * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                                              * This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.ProcessorFeature.Builder} avoiding the need to create one * manually via {@link software.amazon.awssdk.services.rds.model.ProcessorFeature#builder()}. * *

                                                                              * When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.rds.model.ProcessorFeature.Builder#build()} is called immediately and * its result is passed to {@link #processorFeatures(List)}. * * @param processorFeatures * a consumer that will call methods on * {@link software.amazon.awssdk.services.rds.model.ProcessorFeature.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #processorFeatures(java.util.Collection) */ Builder processorFeatures(Consumer... processorFeatures); /** *

                                                                              * Specifies whether the DB instance has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB * Instance. *

                                                                              *

                                                                              * This setting doesn't apply to Amazon Aurora DB instances. You can enable or disable deletion protection for * the DB cluster. For more information, see CreateDBCluster. DB instances in a DB cluster can be * deleted even when deletion protection is enabled for the DB cluster. *

                                                                              * * @param deletionProtection * Specifies whether the DB instance has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection isn't enabled. For more information, * see * Deleting a DB Instance.

                                                                              *

                                                                              * This setting doesn't apply to Amazon Aurora DB instances. You can enable or disable deletion * protection for the DB cluster. For more information, see CreateDBCluster. DB instances in * a DB cluster can be deleted even when deletion protection is enabled for the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder deletionProtection(Boolean deletionProtection); /** *

                                                                              * The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB * instance. *

                                                                              *

                                                                              * For more information about this setting, including limitations that apply to it, see * Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide. *

                                                                              *

                                                                              * This setting doesn't apply to the following DB instances: *

                                                                              *
                                                                                *
                                                                              • *

                                                                                * Amazon Aurora (Storage is managed by the DB cluster.) *

                                                                                *
                                                                              • *
                                                                              • *

                                                                                * RDS Custom *

                                                                                *
                                                                              • *
                                                                              * * @param maxAllocatedStorage * The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB * instance.

                                                                              *

                                                                              * For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User * Guide. *

                                                                              *

                                                                              * This setting doesn't apply to the following DB instances: *

                                                                              *
                                                                                *
                                                                              • *

                                                                                * Amazon Aurora (Storage is managed by the DB cluster.) *

                                                                                *
                                                                              • *
                                                                              • *

                                                                                * RDS Custom *

                                                                                *
                                                                              • * @return Returns a reference to this object so that method calls can be chained together. */ Builder maxAllocatedStorage(Integer maxAllocatedStorage); /** *

                                                                                * Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance. *

                                                                                *

                                                                                * A CoIP provides local or external connectivity to resources in your Outpost subnets through your * on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance * from outside of its virtual private cloud (VPC) on your local network. *

                                                                                *

                                                                                * For more information about RDS on Outposts, see Working with Amazon RDS on * Amazon Web Services Outposts in the Amazon RDS User Guide. *

                                                                                *

                                                                                * For more information about CoIPs, see Customer-owned IP * addresses in the Amazon Web Services Outposts User Guide. *

                                                                                * * @param enableCustomerOwnedIp * Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

                                                                                *

                                                                                * A CoIP provides local or external connectivity to resources in your Outpost subnets through * your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the * DB instance from outside of its virtual private cloud (VPC) on your local network. *

                                                                                *

                                                                                * For more information about RDS on Outposts, see Working with Amazon * RDS on Amazon Web Services Outposts in the Amazon RDS User Guide. *

                                                                                *

                                                                                * For more information about CoIPs, see Customer-owned * IP addresses in the Amazon Web Services Outposts User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder enableCustomerOwnedIp(Boolean enableCustomerOwnedIp); /** *

                                                                                * The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. *

                                                                                *

                                                                                * This setting is required for RDS Custom. *

                                                                                *

                                                                                * Constraints: *

                                                                                *
                                                                                  *
                                                                                • *

                                                                                  * The profile must exist in your account. *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * The profile must have an IAM role that Amazon EC2 has permissions to assume. *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * The instance profile name and the associated IAM role name must start with the prefix * AWSRDSCustom. *

                                                                                  *
                                                                                • *
                                                                                *

                                                                                * For the list of permissions required for the IAM role, see * Configure IAM and your VPC in the Amazon RDS User Guide. *

                                                                                * * @param customIamInstanceProfile * The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB * instance.

                                                                                *

                                                                                * This setting is required for RDS Custom. *

                                                                                *

                                                                                * Constraints: *

                                                                                *
                                                                                  *
                                                                                • *

                                                                                  * The profile must exist in your account. *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * The profile must have an IAM role that Amazon EC2 has permissions to assume. *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * The instance profile name and the associated IAM role name must start with the prefix * AWSRDSCustom. *

                                                                                  *
                                                                                • *
                                                                                *

                                                                                * For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder customIamInstanceProfile(String customIamInstanceProfile); /** *

                                                                                * The location for storing automated backups and manual snapshots. *

                                                                                *

                                                                                * Valid Values: *

                                                                                *
                                                                                  *
                                                                                • *

                                                                                  * outposts (Amazon Web Services Outposts) *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * region (Amazon Web Services Region) *

                                                                                  *
                                                                                • *
                                                                                *

                                                                                * Default: region *

                                                                                *

                                                                                * For more information, see Working with Amazon RDS on * Amazon Web Services Outposts in the Amazon RDS User Guide. *

                                                                                * * @param backupTarget * The location for storing automated backups and manual snapshots.

                                                                                *

                                                                                * Valid Values: *

                                                                                *
                                                                                  *
                                                                                • *

                                                                                  * outposts (Amazon Web Services Outposts) *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * region (Amazon Web Services Region) *

                                                                                  *
                                                                                • *
                                                                                *

                                                                                * Default: region *

                                                                                *

                                                                                * For more information, see Working with Amazon * RDS on Amazon Web Services Outposts in the Amazon RDS User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder backupTarget(String backupTarget); /** *

                                                                                * The network type of the DB instance. *

                                                                                *

                                                                                * The network type is determined by the DBSubnetGroup specified for the DB instance. A * DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols ( * DUAL). *

                                                                                *

                                                                                * For more information, see * Working with a DB instance in a VPC in the Amazon RDS User Guide. *

                                                                                *

                                                                                * Valid Values: IPV4 | DUAL *

                                                                                * * @param networkType * The network type of the DB instance.

                                                                                *

                                                                                * The network type is determined by the DBSubnetGroup specified for the DB instance. A * DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols ( * DUAL). *

                                                                                *

                                                                                * For more information, see * Working with a DB instance in a VPC in the Amazon RDS User Guide. *

                                                                                *

                                                                                * Valid Values: IPV4 | DUAL * @return Returns a reference to this object so that method calls can be chained together. */ Builder networkType(String networkType); /** *

                                                                                * The storage throughput value for the DB instance. *

                                                                                *

                                                                                * This setting applies only to the gp3 storage type. *

                                                                                *

                                                                                * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. *

                                                                                * * @param storageThroughput * The storage throughput value for the DB instance.

                                                                                *

                                                                                * This setting applies only to the gp3 storage type. *

                                                                                *

                                                                                * This setting doesn't apply to Amazon Aurora or RDS Custom DB instances. * @return Returns a reference to this object so that method calls can be chained together. */ Builder storageThroughput(Integer storageThroughput); /** *

                                                                                * Specifies whether to manage the master user password with Amazon Web Services Secrets Manager. *

                                                                                *

                                                                                * For more information, see Password management * with Amazon Web Services Secrets Manager in the Amazon RDS User Guide. *

                                                                                *

                                                                                * Constraints: *

                                                                                *
                                                                                  *
                                                                                • *

                                                                                  * Can't manage the master user password with Amazon Web Services Secrets Manager if * MasterUserPassword is specified. *

                                                                                  *
                                                                                • *
                                                                                * * @param manageMasterUserPassword * Specifies whether to manage the master user password with Amazon Web Services Secrets Manager.

                                                                                *

                                                                                * For more information, see Password * management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide. *

                                                                                *

                                                                                * Constraints: *

                                                                                *
                                                                                  *
                                                                                • *

                                                                                  * Can't manage the master user password with Amazon Web Services Secrets Manager if * MasterUserPassword is specified. *

                                                                                  *
                                                                                • * @return Returns a reference to this object so that method calls can be chained together. */ Builder manageMasterUserPassword(Boolean manageMasterUserPassword); /** *

                                                                                  * The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in * Amazon Web Services Secrets Manager. *

                                                                                  *

                                                                                  * This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets * Manager for the DB instance. *

                                                                                  *

                                                                                  * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. * To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. *

                                                                                  *

                                                                                  * If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS key * is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't * use the aws/secretsmanager KMS key to encrypt the secret, and you must use a customer managed * KMS key. *

                                                                                  *

                                                                                  * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a * different default KMS key for each Amazon Web Services Region. *

                                                                                  * * @param masterUserSecretKmsKeyId * The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and * managed in Amazon Web Services Secrets Manager.

                                                                                  *

                                                                                  * This setting is valid only if the master user password is managed by RDS in Amazon Web Services * Secrets Manager for the DB instance. *

                                                                                  *

                                                                                  * The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the * KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias * ARN. *

                                                                                  *

                                                                                  * If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager * KMS key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, * then you can't use the aws/secretsmanager KMS key to encrypt the secret, and you must use * a customer managed KMS key. *

                                                                                  *

                                                                                  * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has * a different default KMS key for each Amazon Web Services Region. * @return Returns a reference to this object so that method calls can be chained together. */ Builder masterUserSecretKmsKeyId(String masterUserSecretKmsKeyId); /** *

                                                                                  * The CA certificate identifier to use for the DB instance's server certificate. *

                                                                                  *

                                                                                  * This setting doesn't apply to RDS Custom DB instances. *

                                                                                  *

                                                                                  * For more information, see Using SSL/TLS to encrypt * a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to * encrypt a connection to a DB cluster in the Amazon Aurora User Guide. *

                                                                                  * * @param caCertificateIdentifier * The CA certificate identifier to use for the DB instance's server certificate.

                                                                                  *

                                                                                  * This setting doesn't apply to RDS Custom DB instances. *

                                                                                  *

                                                                                  * For more information, see Using SSL/TLS to * encrypt a connection to a DB instance in the Amazon RDS User Guide and Using * SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder caCertificateIdentifier(String caCertificateIdentifier); /** *

                                                                                  * The Oracle system identifier (SID), which is the name of the Oracle database instance that manages your * database files. In this context, the term "Oracle database instance" refers exclusively to the system global * area (SGA) and Oracle background processes. If you don't specify a SID, the value defaults to * RDSCDB. The Oracle SID is also the name of your CDB. *

                                                                                  * * @param dbSystemId * The Oracle system identifier (SID), which is the name of the Oracle database instance that manages * your database files. In this context, the term "Oracle database instance" refers exclusively to the * system global area (SGA) and Oracle background processes. If you don't specify a SID, the value * defaults to RDSCDB. The Oracle SID is also the name of your CDB. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbSystemId(String dbSystemId); /** *

                                                                                  * Indicates whether the DB instance has a dedicated log volume (DLV) enabled. *

                                                                                  * * @param dedicatedLogVolume * Indicates whether the DB instance has a dedicated log volume (DLV) enabled. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dedicatedLogVolume(Boolean dedicatedLogVolume); /** *

                                                                                  * Specifies whether to use the multi-tenant configuration or the single-tenant configuration (default). This * parameter only applies to RDS for Oracle container database (CDB) engines. *

                                                                                  *

                                                                                  * Note the following restrictions: *

                                                                                  *
                                                                                    *
                                                                                  • *

                                                                                    * The DB engine that you specify in the request must support the multi-tenant configuration. If you attempt to * enable the multi-tenant configuration on a DB engine that doesn't support it, the request fails. *

                                                                                    *
                                                                                  • *
                                                                                  • *

                                                                                    * If you specify the multi-tenant configuration when you create your DB instance, you can't later modify this * DB instance to use the single-tenant configuration. *

                                                                                    *
                                                                                  • *
                                                                                  * * @param multiTenant * Specifies whether to use the multi-tenant configuration or the single-tenant configuration (default). * This parameter only applies to RDS for Oracle container database (CDB) engines.

                                                                                  *

                                                                                  * Note the following restrictions: *

                                                                                  *
                                                                                    *
                                                                                  • *

                                                                                    * The DB engine that you specify in the request must support the multi-tenant configuration. If you * attempt to enable the multi-tenant configuration on a DB engine that doesn't support it, the request * fails. *

                                                                                    *
                                                                                  • *
                                                                                  • *

                                                                                    * If you specify the multi-tenant configuration when you create your DB instance, you can't later modify * this DB instance to use the single-tenant configuration. *

                                                                                    *
                                                                                  • * @return Returns a reference to this object so that method calls can be chained together. */ Builder multiTenant(Boolean multiTenant); /** *

                                                                                    * The life cycle type for this DB instance. *

                                                                                    * *

                                                                                    * By default, this value is set to open-source-rds-extended-support, which enrolls your DB * instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended * Support by setting the value to open-source-rds-extended-support-disabled. In this case, * creating the DB instance will fail if the DB major version is past its end of standard support date. *

                                                                                    *
                                                                                    *

                                                                                    * This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life * cycle type is managed by the DB cluster. *

                                                                                    *

                                                                                    * You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended * Support, you can run the selected major engine version on your DB instance past the end of standard support * for that engine version. For more information, see Using Amazon RDS Extended * Support in the Amazon RDS User Guide. *

                                                                                    *

                                                                                    * Valid Values: open-source-rds-extended-support | open-source-rds-extended-support-disabled *

                                                                                    *

                                                                                    * Default: open-source-rds-extended-support *

                                                                                    * * @param engineLifecycleSupport * The life cycle type for this DB instance.

                                                                                    *

                                                                                    * By default, this value is set to open-source-rds-extended-support, which enrolls your DB * instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for * Extended Support by setting the value to open-source-rds-extended-support-disabled. In * this case, creating the DB instance will fail if the DB major version is past its end of standard * support date. *

                                                                                    *
                                                                                    *

                                                                                    * This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the * life cycle type is managed by the DB cluster. *

                                                                                    *

                                                                                    * You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS * Extended Support, you can run the selected major engine version on your DB instance past the end of * standard support for that engine version. For more information, see Using Amazon RDS * Extended Support in the Amazon RDS User Guide. *

                                                                                    *

                                                                                    * Valid Values: * open-source-rds-extended-support | open-source-rds-extended-support-disabled *

                                                                                    *

                                                                                    * Default: open-source-rds-extended-support * @return Returns a reference to this object so that method calls can be chained together. */ Builder engineLifecycleSupport(String engineLifecycleSupport); @Override Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration); @Override Builder overrideConfiguration(Consumer builderConsumer); } static final class BuilderImpl extends RdsRequest.BuilderImpl implements Builder { private String dbName; private String dbInstanceIdentifier; private Integer allocatedStorage; private String dbInstanceClass; private String engine; private String masterUsername; private String masterUserPassword; private List dbSecurityGroups = DefaultSdkAutoConstructList.getInstance(); private List vpcSecurityGroupIds = DefaultSdkAutoConstructList.getInstance(); private String availabilityZone; private String dbSubnetGroupName; private String preferredMaintenanceWindow; private String dbParameterGroupName; private Integer backupRetentionPeriod; private String preferredBackupWindow; private Integer port; private Boolean multiAZ; private String engineVersion; private Boolean autoMinorVersionUpgrade; private String licenseModel; private Integer iops; private String optionGroupName; private String characterSetName; private String ncharCharacterSetName; private Boolean publiclyAccessible; private List tags = DefaultSdkAutoConstructList.getInstance(); private String dbClusterIdentifier; private String storageType; private String tdeCredentialArn; private String tdeCredentialPassword; private Boolean storageEncrypted; private String kmsKeyId; private String domain; private String domainFqdn; private String domainOu; private String domainAuthSecretArn; private List domainDnsIps = DefaultSdkAutoConstructList.getInstance(); private Boolean copyTagsToSnapshot; private Integer monitoringInterval; private String monitoringRoleArn; private String domainIAMRoleName; private Integer promotionTier; private String timezone; private Boolean enableIAMDatabaseAuthentication; private Boolean enablePerformanceInsights; private String performanceInsightsKMSKeyId; private Integer performanceInsightsRetentionPeriod; private List enableCloudwatchLogsExports = DefaultSdkAutoConstructList.getInstance(); private List processorFeatures = DefaultSdkAutoConstructList.getInstance(); private Boolean deletionProtection; private Integer maxAllocatedStorage; private Boolean enableCustomerOwnedIp; private String customIamInstanceProfile; private String backupTarget; private String networkType; private Integer storageThroughput; private Boolean manageMasterUserPassword; private String masterUserSecretKmsKeyId; private String caCertificateIdentifier; private String dbSystemId; private Boolean dedicatedLogVolume; private Boolean multiTenant; private String engineLifecycleSupport; private BuilderImpl() { } private BuilderImpl(CreateDbInstanceRequest model) { super(model); dbName(model.dbName); dbInstanceIdentifier(model.dbInstanceIdentifier); allocatedStorage(model.allocatedStorage); dbInstanceClass(model.dbInstanceClass); engine(model.engine); masterUsername(model.masterUsername); masterUserPassword(model.masterUserPassword); dbSecurityGroups(model.dbSecurityGroups); vpcSecurityGroupIds(model.vpcSecurityGroupIds); availabilityZone(model.availabilityZone); dbSubnetGroupName(model.dbSubnetGroupName); preferredMaintenanceWindow(model.preferredMaintenanceWindow); dbParameterGroupName(model.dbParameterGroupName); backupRetentionPeriod(model.backupRetentionPeriod); preferredBackupWindow(model.preferredBackupWindow); port(model.port); multiAZ(model.multiAZ); engineVersion(model.engineVersion); autoMinorVersionUpgrade(model.autoMinorVersionUpgrade); licenseModel(model.licenseModel); iops(model.iops); optionGroupName(model.optionGroupName); characterSetName(model.characterSetName); ncharCharacterSetName(model.ncharCharacterSetName); publiclyAccessible(model.publiclyAccessible); tags(model.tags); dbClusterIdentifier(model.dbClusterIdentifier); storageType(model.storageType); tdeCredentialArn(model.tdeCredentialArn); tdeCredentialPassword(model.tdeCredentialPassword); storageEncrypted(model.storageEncrypted); kmsKeyId(model.kmsKeyId); domain(model.domain); domainFqdn(model.domainFqdn); domainOu(model.domainOu); domainAuthSecretArn(model.domainAuthSecretArn); domainDnsIps(model.domainDnsIps); copyTagsToSnapshot(model.copyTagsToSnapshot); monitoringInterval(model.monitoringInterval); monitoringRoleArn(model.monitoringRoleArn); domainIAMRoleName(model.domainIAMRoleName); promotionTier(model.promotionTier); timezone(model.timezone); enableIAMDatabaseAuthentication(model.enableIAMDatabaseAuthentication); enablePerformanceInsights(model.enablePerformanceInsights); performanceInsightsKMSKeyId(model.performanceInsightsKMSKeyId); performanceInsightsRetentionPeriod(model.performanceInsightsRetentionPeriod); enableCloudwatchLogsExports(model.enableCloudwatchLogsExports); processorFeatures(model.processorFeatures); deletionProtection(model.deletionProtection); maxAllocatedStorage(model.maxAllocatedStorage); enableCustomerOwnedIp(model.enableCustomerOwnedIp); customIamInstanceProfile(model.customIamInstanceProfile); backupTarget(model.backupTarget); networkType(model.networkType); storageThroughput(model.storageThroughput); manageMasterUserPassword(model.manageMasterUserPassword); masterUserSecretKmsKeyId(model.masterUserSecretKmsKeyId); caCertificateIdentifier(model.caCertificateIdentifier); dbSystemId(model.dbSystemId); dedicatedLogVolume(model.dedicatedLogVolume); multiTenant(model.multiTenant); engineLifecycleSupport(model.engineLifecycleSupport); } public final String getDbName() { return dbName; } public final void setDbName(String dbName) { this.dbName = dbName; } @Override public final Builder dbName(String dbName) { this.dbName = dbName; return this; } public final String getDbInstanceIdentifier() { return dbInstanceIdentifier; } public final void setDbInstanceIdentifier(String dbInstanceIdentifier) { this.dbInstanceIdentifier = dbInstanceIdentifier; } @Override public final Builder dbInstanceIdentifier(String dbInstanceIdentifier) { this.dbInstanceIdentifier = dbInstanceIdentifier; return this; } public final Integer getAllocatedStorage() { return allocatedStorage; } public final void setAllocatedStorage(Integer allocatedStorage) { this.allocatedStorage = allocatedStorage; } @Override public final Builder allocatedStorage(Integer allocatedStorage) { this.allocatedStorage = allocatedStorage; return this; } public final String getDbInstanceClass() { return dbInstanceClass; } public final void setDbInstanceClass(String dbInstanceClass) { this.dbInstanceClass = dbInstanceClass; } @Override public final Builder dbInstanceClass(String dbInstanceClass) { this.dbInstanceClass = dbInstanceClass; return this; } public final String getEngine() { return engine; } public final void setEngine(String engine) { this.engine = engine; } @Override public final Builder engine(String engine) { this.engine = engine; return this; } public final String getMasterUsername() { return masterUsername; } public final void setMasterUsername(String masterUsername) { this.masterUsername = masterUsername; } @Override public final Builder masterUsername(String masterUsername) { this.masterUsername = masterUsername; return this; } public final String getMasterUserPassword() { return masterUserPassword; } public final void setMasterUserPassword(String masterUserPassword) { this.masterUserPassword = masterUserPassword; } @Override public final Builder masterUserPassword(String masterUserPassword) { this.masterUserPassword = masterUserPassword; return this; } public final Collection getDbSecurityGroups() { if (dbSecurityGroups instanceof SdkAutoConstructList) { return null; } return dbSecurityGroups; } public final void setDbSecurityGroups(Collection dbSecurityGroups) { this.dbSecurityGroups = DBSecurityGroupNameListCopier.copy(dbSecurityGroups); } @Override public final Builder dbSecurityGroups(Collection dbSecurityGroups) { this.dbSecurityGroups = DBSecurityGroupNameListCopier.copy(dbSecurityGroups); return this; } @Override @SafeVarargs public final Builder dbSecurityGroups(String... dbSecurityGroups) { dbSecurityGroups(Arrays.asList(dbSecurityGroups)); return this; } public final Collection getVpcSecurityGroupIds() { if (vpcSecurityGroupIds instanceof SdkAutoConstructList) { return null; } return vpcSecurityGroupIds; } public final void setVpcSecurityGroupIds(Collection vpcSecurityGroupIds) { this.vpcSecurityGroupIds = VpcSecurityGroupIdListCopier.copy(vpcSecurityGroupIds); } @Override public final Builder vpcSecurityGroupIds(Collection vpcSecurityGroupIds) { this.vpcSecurityGroupIds = VpcSecurityGroupIdListCopier.copy(vpcSecurityGroupIds); return this; } @Override @SafeVarargs public final Builder vpcSecurityGroupIds(String... vpcSecurityGroupIds) { vpcSecurityGroupIds(Arrays.asList(vpcSecurityGroupIds)); return this; } public final String getAvailabilityZone() { return availabilityZone; } public final void setAvailabilityZone(String availabilityZone) { this.availabilityZone = availabilityZone; } @Override public final Builder availabilityZone(String availabilityZone) { this.availabilityZone = availabilityZone; return this; } public final String getDbSubnetGroupName() { return dbSubnetGroupName; } public final void setDbSubnetGroupName(String dbSubnetGroupName) { this.dbSubnetGroupName = dbSubnetGroupName; } @Override public final Builder dbSubnetGroupName(String dbSubnetGroupName) { this.dbSubnetGroupName = dbSubnetGroupName; return this; } public final String getPreferredMaintenanceWindow() { return preferredMaintenanceWindow; } public final void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; } @Override public final Builder preferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; return this; } public final String getDbParameterGroupName() { return dbParameterGroupName; } public final void setDbParameterGroupName(String dbParameterGroupName) { this.dbParameterGroupName = dbParameterGroupName; } @Override public final Builder dbParameterGroupName(String dbParameterGroupName) { this.dbParameterGroupName = dbParameterGroupName; return this; } public final Integer getBackupRetentionPeriod() { return backupRetentionPeriod; } public final void setBackupRetentionPeriod(Integer backupRetentionPeriod) { this.backupRetentionPeriod = backupRetentionPeriod; } @Override public final Builder backupRetentionPeriod(Integer backupRetentionPeriod) { this.backupRetentionPeriod = backupRetentionPeriod; return this; } public final String getPreferredBackupWindow() { return preferredBackupWindow; } public final void setPreferredBackupWindow(String preferredBackupWindow) { this.preferredBackupWindow = preferredBackupWindow; } @Override public final Builder preferredBackupWindow(String preferredBackupWindow) { this.preferredBackupWindow = preferredBackupWindow; return this; } public final Integer getPort() { return port; } public final void setPort(Integer port) { this.port = port; } @Override public final Builder port(Integer port) { this.port = port; return this; } public final Boolean getMultiAZ() { return multiAZ; } public final void setMultiAZ(Boolean multiAZ) { this.multiAZ = multiAZ; } @Override public final Builder multiAZ(Boolean multiAZ) { this.multiAZ = multiAZ; return this; } public final String getEngineVersion() { return engineVersion; } public final void setEngineVersion(String engineVersion) { this.engineVersion = engineVersion; } @Override public final Builder engineVersion(String engineVersion) { this.engineVersion = engineVersion; return this; } public final Boolean getAutoMinorVersionUpgrade() { return autoMinorVersionUpgrade; } public final void setAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) { this.autoMinorVersionUpgrade = autoMinorVersionUpgrade; } @Override public final Builder autoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) { this.autoMinorVersionUpgrade = autoMinorVersionUpgrade; return this; } public final String getLicenseModel() { return licenseModel; } public final void setLicenseModel(String licenseModel) { this.licenseModel = licenseModel; } @Override public final Builder licenseModel(String licenseModel) { this.licenseModel = licenseModel; return this; } public final Integer getIops() { return iops; } public final void setIops(Integer iops) { this.iops = iops; } @Override public final Builder iops(Integer iops) { this.iops = iops; return this; } public final String getOptionGroupName() { return optionGroupName; } public final void setOptionGroupName(String optionGroupName) { this.optionGroupName = optionGroupName; } @Override public final Builder optionGroupName(String optionGroupName) { this.optionGroupName = optionGroupName; return this; } public final String getCharacterSetName() { return characterSetName; } public final void setCharacterSetName(String characterSetName) { this.characterSetName = characterSetName; } @Override public final Builder characterSetName(String characterSetName) { this.characterSetName = characterSetName; return this; } public final String getNcharCharacterSetName() { return ncharCharacterSetName; } public final void setNcharCharacterSetName(String ncharCharacterSetName) { this.ncharCharacterSetName = ncharCharacterSetName; } @Override public final Builder ncharCharacterSetName(String ncharCharacterSetName) { this.ncharCharacterSetName = ncharCharacterSetName; return this; } public final Boolean getPubliclyAccessible() { return publiclyAccessible; } public final void setPubliclyAccessible(Boolean publiclyAccessible) { this.publiclyAccessible = publiclyAccessible; } @Override public final Builder publiclyAccessible(Boolean publiclyAccessible) { this.publiclyAccessible = publiclyAccessible; return this; } public final List getTags() { List result = TagListCopier.copyToBuilder(this.tags); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setTags(Collection tags) { this.tags = TagListCopier.copyFromBuilder(tags); } @Override public final Builder tags(Collection tags) { this.tags = TagListCopier.copy(tags); return this; } @Override @SafeVarargs public final Builder tags(Tag... tags) { tags(Arrays.asList(tags)); return this; } @Override @SafeVarargs public final Builder tags(Consumer... tags) { tags(Stream.of(tags).map(c -> Tag.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final String getDbClusterIdentifier() { return dbClusterIdentifier; } public final void setDbClusterIdentifier(String dbClusterIdentifier) { this.dbClusterIdentifier = dbClusterIdentifier; } @Override public final Builder dbClusterIdentifier(String dbClusterIdentifier) { this.dbClusterIdentifier = dbClusterIdentifier; return this; } public final String getStorageType() { return storageType; } public final void setStorageType(String storageType) { this.storageType = storageType; } @Override public final Builder storageType(String storageType) { this.storageType = storageType; return this; } public final String getTdeCredentialArn() { return tdeCredentialArn; } public final void setTdeCredentialArn(String tdeCredentialArn) { this.tdeCredentialArn = tdeCredentialArn; } @Override public final Builder tdeCredentialArn(String tdeCredentialArn) { this.tdeCredentialArn = tdeCredentialArn; return this; } public final String getTdeCredentialPassword() { return tdeCredentialPassword; } public final void setTdeCredentialPassword(String tdeCredentialPassword) { this.tdeCredentialPassword = tdeCredentialPassword; } @Override public final Builder tdeCredentialPassword(String tdeCredentialPassword) { this.tdeCredentialPassword = tdeCredentialPassword; return this; } public final Boolean getStorageEncrypted() { return storageEncrypted; } public final void setStorageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; } @Override public final Builder storageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; return this; } public final String getKmsKeyId() { return kmsKeyId; } public final void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } @Override public final Builder kmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; return this; } public final String getDomain() { return domain; } public final void setDomain(String domain) { this.domain = domain; } @Override public final Builder domain(String domain) { this.domain = domain; return this; } public final String getDomainFqdn() { return domainFqdn; } public final void setDomainFqdn(String domainFqdn) { this.domainFqdn = domainFqdn; } @Override public final Builder domainFqdn(String domainFqdn) { this.domainFqdn = domainFqdn; return this; } public final String getDomainOu() { return domainOu; } public final void setDomainOu(String domainOu) { this.domainOu = domainOu; } @Override public final Builder domainOu(String domainOu) { this.domainOu = domainOu; return this; } public final String getDomainAuthSecretArn() { return domainAuthSecretArn; } public final void setDomainAuthSecretArn(String domainAuthSecretArn) { this.domainAuthSecretArn = domainAuthSecretArn; } @Override public final Builder domainAuthSecretArn(String domainAuthSecretArn) { this.domainAuthSecretArn = domainAuthSecretArn; return this; } public final Collection getDomainDnsIps() { if (domainDnsIps instanceof SdkAutoConstructList) { return null; } return domainDnsIps; } public final void setDomainDnsIps(Collection domainDnsIps) { this.domainDnsIps = StringListCopier.copy(domainDnsIps); } @Override public final Builder domainDnsIps(Collection domainDnsIps) { this.domainDnsIps = StringListCopier.copy(domainDnsIps); return this; } @Override @SafeVarargs public final Builder domainDnsIps(String... domainDnsIps) { domainDnsIps(Arrays.asList(domainDnsIps)); return this; } public final Boolean getCopyTagsToSnapshot() { return copyTagsToSnapshot; } public final void setCopyTagsToSnapshot(Boolean copyTagsToSnapshot) { this.copyTagsToSnapshot = copyTagsToSnapshot; } @Override public final Builder copyTagsToSnapshot(Boolean copyTagsToSnapshot) { this.copyTagsToSnapshot = copyTagsToSnapshot; return this; } public final Integer getMonitoringInterval() { return monitoringInterval; } public final void setMonitoringInterval(Integer monitoringInterval) { this.monitoringInterval = monitoringInterval; } @Override public final Builder monitoringInterval(Integer monitoringInterval) { this.monitoringInterval = monitoringInterval; return this; } public final String getMonitoringRoleArn() { return monitoringRoleArn; } public final void setMonitoringRoleArn(String monitoringRoleArn) { this.monitoringRoleArn = monitoringRoleArn; } @Override public final Builder monitoringRoleArn(String monitoringRoleArn) { this.monitoringRoleArn = monitoringRoleArn; return this; } public final String getDomainIAMRoleName() { return domainIAMRoleName; } public final void setDomainIAMRoleName(String domainIAMRoleName) { this.domainIAMRoleName = domainIAMRoleName; } @Override public final Builder domainIAMRoleName(String domainIAMRoleName) { this.domainIAMRoleName = domainIAMRoleName; return this; } public final Integer getPromotionTier() { return promotionTier; } public final void setPromotionTier(Integer promotionTier) { this.promotionTier = promotionTier; } @Override public final Builder promotionTier(Integer promotionTier) { this.promotionTier = promotionTier; return this; } public final String getTimezone() { return timezone; } public final void setTimezone(String timezone) { this.timezone = timezone; } @Override public final Builder timezone(String timezone) { this.timezone = timezone; return this; } public final Boolean getEnableIAMDatabaseAuthentication() { return enableIAMDatabaseAuthentication; } public final void setEnableIAMDatabaseAuthentication(Boolean enableIAMDatabaseAuthentication) { this.enableIAMDatabaseAuthentication = enableIAMDatabaseAuthentication; } @Override public final Builder enableIAMDatabaseAuthentication(Boolean enableIAMDatabaseAuthentication) { this.enableIAMDatabaseAuthentication = enableIAMDatabaseAuthentication; return this; } public final Boolean getEnablePerformanceInsights() { return enablePerformanceInsights; } public final void setEnablePerformanceInsights(Boolean enablePerformanceInsights) { this.enablePerformanceInsights = enablePerformanceInsights; } @Override public final Builder enablePerformanceInsights(Boolean enablePerformanceInsights) { this.enablePerformanceInsights = enablePerformanceInsights; return this; } public final String getPerformanceInsightsKMSKeyId() { return performanceInsightsKMSKeyId; } public final void setPerformanceInsightsKMSKeyId(String performanceInsightsKMSKeyId) { this.performanceInsightsKMSKeyId = performanceInsightsKMSKeyId; } @Override public final Builder performanceInsightsKMSKeyId(String performanceInsightsKMSKeyId) { this.performanceInsightsKMSKeyId = performanceInsightsKMSKeyId; return this; } public final Integer getPerformanceInsightsRetentionPeriod() { return performanceInsightsRetentionPeriod; } public final void setPerformanceInsightsRetentionPeriod(Integer performanceInsightsRetentionPeriod) { this.performanceInsightsRetentionPeriod = performanceInsightsRetentionPeriod; } @Override public final Builder performanceInsightsRetentionPeriod(Integer performanceInsightsRetentionPeriod) { this.performanceInsightsRetentionPeriod = performanceInsightsRetentionPeriod; return this; } public final Collection getEnableCloudwatchLogsExports() { if (enableCloudwatchLogsExports instanceof SdkAutoConstructList) { return null; } return enableCloudwatchLogsExports; } public final void setEnableCloudwatchLogsExports(Collection enableCloudwatchLogsExports) { this.enableCloudwatchLogsExports = LogTypeListCopier.copy(enableCloudwatchLogsExports); } @Override public final Builder enableCloudwatchLogsExports(Collection enableCloudwatchLogsExports) { this.enableCloudwatchLogsExports = LogTypeListCopier.copy(enableCloudwatchLogsExports); return this; } @Override @SafeVarargs public final Builder enableCloudwatchLogsExports(String... enableCloudwatchLogsExports) { enableCloudwatchLogsExports(Arrays.asList(enableCloudwatchLogsExports)); return this; } public final List getProcessorFeatures() { List result = ProcessorFeatureListCopier.copyToBuilder(this.processorFeatures); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setProcessorFeatures(Collection processorFeatures) { this.processorFeatures = ProcessorFeatureListCopier.copyFromBuilder(processorFeatures); } @Override public final Builder processorFeatures(Collection processorFeatures) { this.processorFeatures = ProcessorFeatureListCopier.copy(processorFeatures); return this; } @Override @SafeVarargs public final Builder processorFeatures(ProcessorFeature... processorFeatures) { processorFeatures(Arrays.asList(processorFeatures)); return this; } @Override @SafeVarargs public final Builder processorFeatures(Consumer... processorFeatures) { processorFeatures(Stream.of(processorFeatures).map(c -> ProcessorFeature.builder().applyMutation(c).build()) .collect(Collectors.toList())); return this; } public final Boolean getDeletionProtection() { return deletionProtection; } public final void setDeletionProtection(Boolean deletionProtection) { this.deletionProtection = deletionProtection; } @Override public final Builder deletionProtection(Boolean deletionProtection) { this.deletionProtection = deletionProtection; return this; } public final Integer getMaxAllocatedStorage() { return maxAllocatedStorage; } public final void setMaxAllocatedStorage(Integer maxAllocatedStorage) { this.maxAllocatedStorage = maxAllocatedStorage; } @Override public final Builder maxAllocatedStorage(Integer maxAllocatedStorage) { this.maxAllocatedStorage = maxAllocatedStorage; return this; } public final Boolean getEnableCustomerOwnedIp() { return enableCustomerOwnedIp; } public final void setEnableCustomerOwnedIp(Boolean enableCustomerOwnedIp) { this.enableCustomerOwnedIp = enableCustomerOwnedIp; } @Override public final Builder enableCustomerOwnedIp(Boolean enableCustomerOwnedIp) { this.enableCustomerOwnedIp = enableCustomerOwnedIp; return this; } public final String getCustomIamInstanceProfile() { return customIamInstanceProfile; } public final void setCustomIamInstanceProfile(String customIamInstanceProfile) { this.customIamInstanceProfile = customIamInstanceProfile; } @Override public final Builder customIamInstanceProfile(String customIamInstanceProfile) { this.customIamInstanceProfile = customIamInstanceProfile; return this; } public final String getBackupTarget() { return backupTarget; } public final void setBackupTarget(String backupTarget) { this.backupTarget = backupTarget; } @Override public final Builder backupTarget(String backupTarget) { this.backupTarget = backupTarget; return this; } public final String getNetworkType() { return networkType; } public final void setNetworkType(String networkType) { this.networkType = networkType; } @Override public final Builder networkType(String networkType) { this.networkType = networkType; return this; } public final Integer getStorageThroughput() { return storageThroughput; } public final void setStorageThroughput(Integer storageThroughput) { this.storageThroughput = storageThroughput; } @Override public final Builder storageThroughput(Integer storageThroughput) { this.storageThroughput = storageThroughput; return this; } public final Boolean getManageMasterUserPassword() { return manageMasterUserPassword; } public final void setManageMasterUserPassword(Boolean manageMasterUserPassword) { this.manageMasterUserPassword = manageMasterUserPassword; } @Override public final Builder manageMasterUserPassword(Boolean manageMasterUserPassword) { this.manageMasterUserPassword = manageMasterUserPassword; return this; } public final String getMasterUserSecretKmsKeyId() { return masterUserSecretKmsKeyId; } public final void setMasterUserSecretKmsKeyId(String masterUserSecretKmsKeyId) { this.masterUserSecretKmsKeyId = masterUserSecretKmsKeyId; } @Override public final Builder masterUserSecretKmsKeyId(String masterUserSecretKmsKeyId) { this.masterUserSecretKmsKeyId = masterUserSecretKmsKeyId; return this; } public final String getCaCertificateIdentifier() { return caCertificateIdentifier; } public final void setCaCertificateIdentifier(String caCertificateIdentifier) { this.caCertificateIdentifier = caCertificateIdentifier; } @Override public final Builder caCertificateIdentifier(String caCertificateIdentifier) { this.caCertificateIdentifier = caCertificateIdentifier; return this; } public final String getDbSystemId() { return dbSystemId; } public final void setDbSystemId(String dbSystemId) { this.dbSystemId = dbSystemId; } @Override public final Builder dbSystemId(String dbSystemId) { this.dbSystemId = dbSystemId; return this; } public final Boolean getDedicatedLogVolume() { return dedicatedLogVolume; } public final void setDedicatedLogVolume(Boolean dedicatedLogVolume) { this.dedicatedLogVolume = dedicatedLogVolume; } @Override public final Builder dedicatedLogVolume(Boolean dedicatedLogVolume) { this.dedicatedLogVolume = dedicatedLogVolume; return this; } public final Boolean getMultiTenant() { return multiTenant; } public final void setMultiTenant(Boolean multiTenant) { this.multiTenant = multiTenant; } @Override public final Builder multiTenant(Boolean multiTenant) { this.multiTenant = multiTenant; return this; } public final String getEngineLifecycleSupport() { return engineLifecycleSupport; } public final void setEngineLifecycleSupport(String engineLifecycleSupport) { this.engineLifecycleSupport = engineLifecycleSupport; } @Override public final Builder engineLifecycleSupport(String engineLifecycleSupport) { this.engineLifecycleSupport = engineLifecycleSupport; return this; } @Override public Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration) { super.overrideConfiguration(overrideConfiguration); return this; } @Override public Builder overrideConfiguration(Consumer builderConsumer) { super.overrideConfiguration(builderConsumer); return this; } @Override public CreateDbInstanceRequest build() { return new CreateDbInstanceRequest(this); } @Override public List> sdkFields() { return SDK_FIELDS; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy