software.amazon.awssdk.services.rds.model.DBInstance Maven / Gradle / Ivy
/*
* 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.io.Serializable;
import java.time.Instant;
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.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;
/**
*
* Contains the details of an Amazon RDS DB instance.
*
*
* This data type is used as a response element in the operations CreateDBInstance
,
* CreateDBInstanceReadReplica
, DeleteDBInstance
, DescribeDBInstances
,
* ModifyDBInstance
, PromoteReadReplica
, RebootDBInstance
,
* RestoreDBInstanceFromDBSnapshot
, RestoreDBInstanceFromS3
,
* RestoreDBInstanceToPointInTime
, StartDBInstance
, and StopDBInstance
.
*
*/
@Generated("software.amazon.awssdk:codegen")
public final class DBInstance implements SdkPojo, Serializable, ToCopyableBuilder {
private static final SdkField DB_INSTANCE_IDENTIFIER_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DBInstanceIdentifier").getter(getter(DBInstance::dbInstanceIdentifier))
.setter(setter(Builder::dbInstanceIdentifier))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBInstanceIdentifier").build())
.build();
private static final SdkField DB_INSTANCE_CLASS_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DBInstanceClass").getter(getter(DBInstance::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(DBInstance::engine)).setter(setter(Builder::engine))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Engine").build()).build();
private static final SdkField DB_INSTANCE_STATUS_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DBInstanceStatus").getter(getter(DBInstance::dbInstanceStatus))
.setter(setter(Builder::dbInstanceStatus))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBInstanceStatus").build()).build();
private static final SdkField AUTOMATIC_RESTART_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT)
.memberName("AutomaticRestartTime").getter(getter(DBInstance::automaticRestartTime))
.setter(setter(Builder::automaticRestartTime))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AutomaticRestartTime").build())
.build();
private static final SdkField MASTER_USERNAME_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("MasterUsername").getter(getter(DBInstance::masterUsername)).setter(setter(Builder::masterUsername))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MasterUsername").build()).build();
private static final SdkField DB_NAME_FIELD = SdkField. builder(MarshallingType.STRING).memberName("DBName")
.getter(getter(DBInstance::dbName)).setter(setter(Builder::dbName))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBName").build()).build();
private static final SdkField ENDPOINT_FIELD = SdkField. builder(MarshallingType.SDK_POJO)
.memberName("Endpoint").getter(getter(DBInstance::endpoint)).setter(setter(Builder::endpoint))
.constructor(Endpoint::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Endpoint").build()).build();
private static final SdkField ALLOCATED_STORAGE_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("AllocatedStorage").getter(getter(DBInstance::allocatedStorage))
.setter(setter(Builder::allocatedStorage))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AllocatedStorage").build()).build();
private static final SdkField INSTANCE_CREATE_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT)
.memberName("InstanceCreateTime").getter(getter(DBInstance::instanceCreateTime))
.setter(setter(Builder::instanceCreateTime))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("InstanceCreateTime").build())
.build();
private static final SdkField PREFERRED_BACKUP_WINDOW_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("PreferredBackupWindow").getter(getter(DBInstance::preferredBackupWindow))
.setter(setter(Builder::preferredBackupWindow))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PreferredBackupWindow").build())
.build();
private static final SdkField BACKUP_RETENTION_PERIOD_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("BackupRetentionPeriod").getter(getter(DBInstance::backupRetentionPeriod))
.setter(setter(Builder::backupRetentionPeriod))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("BackupRetentionPeriod").build())
.build();
private static final SdkField> DB_SECURITY_GROUPS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("DBSecurityGroups")
.getter(getter(DBInstance::dbSecurityGroups))
.setter(setter(Builder::dbSecurityGroups))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBSecurityGroups").build(),
ListTrait
.builder()
.memberLocationName("DBSecurityGroup")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(DBSecurityGroupMembership::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("DBSecurityGroup").build()).build()).build()).build();
private static final SdkField> VPC_SECURITY_GROUPS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("VpcSecurityGroups")
.getter(getter(DBInstance::vpcSecurityGroups))
.setter(setter(Builder::vpcSecurityGroups))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("VpcSecurityGroups").build(),
ListTrait
.builder()
.memberLocationName("VpcSecurityGroupMembership")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(VpcSecurityGroupMembership::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("VpcSecurityGroupMembership").build()).build()).build())
.build();
private static final SdkField> DB_PARAMETER_GROUPS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("DBParameterGroups")
.getter(getter(DBInstance::dbParameterGroups))
.setter(setter(Builder::dbParameterGroups))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBParameterGroups").build(),
ListTrait
.builder()
.memberLocationName("DBParameterGroup")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(DBParameterGroupStatus::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("DBParameterGroup").build()).build()).build()).build();
private static final SdkField AVAILABILITY_ZONE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("AvailabilityZone").getter(getter(DBInstance::availabilityZone))
.setter(setter(Builder::availabilityZone))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AvailabilityZone").build()).build();
private static final SdkField DB_SUBNET_GROUP_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("DBSubnetGroup")
.getter(getter(DBInstance::dbSubnetGroup)).setter(setter(Builder::dbSubnetGroup)).constructor(DBSubnetGroup::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBSubnetGroup").build()).build();
private static final SdkField PREFERRED_MAINTENANCE_WINDOW_FIELD = SdkField
. builder(MarshallingType.STRING)
.memberName("PreferredMaintenanceWindow")
.getter(getter(DBInstance::preferredMaintenanceWindow))
.setter(setter(Builder::preferredMaintenanceWindow))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PreferredMaintenanceWindow").build())
.build();
private static final SdkField PENDING_MODIFIED_VALUES_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("PendingModifiedValues")
.getter(getter(DBInstance::pendingModifiedValues)).setter(setter(Builder::pendingModifiedValues))
.constructor(PendingModifiedValues::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PendingModifiedValues").build())
.build();
private static final SdkField LATEST_RESTORABLE_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT)
.memberName("LatestRestorableTime").getter(getter(DBInstance::latestRestorableTime))
.setter(setter(Builder::latestRestorableTime))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("LatestRestorableTime").build())
.build();
private static final SdkField MULTI_AZ_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("MultiAZ").getter(getter(DBInstance::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(DBInstance::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(DBInstance::autoMinorVersionUpgrade))
.setter(setter(Builder::autoMinorVersionUpgrade))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AutoMinorVersionUpgrade").build())
.build();
private static final SdkField READ_REPLICA_SOURCE_DB_INSTANCE_IDENTIFIER_FIELD = SdkField
. builder(MarshallingType.STRING)
.memberName("ReadReplicaSourceDBInstanceIdentifier")
.getter(getter(DBInstance::readReplicaSourceDBInstanceIdentifier))
.setter(setter(Builder::readReplicaSourceDBInstanceIdentifier))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("ReadReplicaSourceDBInstanceIdentifier").build()).build();
private static final SdkField> READ_REPLICA_DB_INSTANCE_IDENTIFIERS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("ReadReplicaDBInstanceIdentifiers")
.getter(getter(DBInstance::readReplicaDBInstanceIdentifiers))
.setter(setter(Builder::readReplicaDBInstanceIdentifiers))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ReadReplicaDBInstanceIdentifiers")
.build(),
ListTrait
.builder()
.memberLocationName("ReadReplicaDBInstanceIdentifier")
.memberFieldInfo(
SdkField. builder(MarshallingType.STRING)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("ReadReplicaDBInstanceIdentifier").build()).build()).build())
.build();
private static final SdkField> READ_REPLICA_DB_CLUSTER_IDENTIFIERS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("ReadReplicaDBClusterIdentifiers")
.getter(getter(DBInstance::readReplicaDBClusterIdentifiers))
.setter(setter(Builder::readReplicaDBClusterIdentifiers))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ReadReplicaDBClusterIdentifiers")
.build(),
ListTrait
.builder()
.memberLocationName("ReadReplicaDBClusterIdentifier")
.memberFieldInfo(
SdkField. builder(MarshallingType.STRING)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("ReadReplicaDBClusterIdentifier").build()).build()).build())
.build();
private static final SdkField REPLICA_MODE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("ReplicaMode").getter(getter(DBInstance::replicaModeAsString)).setter(setter(Builder::replicaMode))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ReplicaMode").build()).build();
private static final SdkField LICENSE_MODEL_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("LicenseModel").getter(getter(DBInstance::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(DBInstance::iops)).setter(setter(Builder::iops))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Iops").build()).build();
private static final SdkField> OPTION_GROUP_MEMBERSHIPS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("OptionGroupMemberships")
.getter(getter(DBInstance::optionGroupMemberships))
.setter(setter(Builder::optionGroupMemberships))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("OptionGroupMemberships").build(),
ListTrait
.builder()
.memberLocationName("OptionGroupMembership")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(OptionGroupMembership::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("OptionGroupMembership").build()).build()).build()).build();
private static final SdkField CHARACTER_SET_NAME_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("CharacterSetName").getter(getter(DBInstance::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(DBInstance::ncharCharacterSetName))
.setter(setter(Builder::ncharCharacterSetName))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("NcharCharacterSetName").build())
.build();
private static final SdkField SECONDARY_AVAILABILITY_ZONE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("SecondaryAvailabilityZone").getter(getter(DBInstance::secondaryAvailabilityZone))
.setter(setter(Builder::secondaryAvailabilityZone))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SecondaryAvailabilityZone").build())
.build();
private static final SdkField PUBLICLY_ACCESSIBLE_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("PubliclyAccessible").getter(getter(DBInstance::publiclyAccessible))
.setter(setter(Builder::publiclyAccessible))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PubliclyAccessible").build())
.build();
private static final SdkField> STATUS_INFOS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("StatusInfos")
.getter(getter(DBInstance::statusInfos))
.setter(setter(Builder::statusInfos))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("StatusInfos").build(),
ListTrait
.builder()
.memberLocationName("DBInstanceStatusInfo")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(DBInstanceStatusInfo::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("DBInstanceStatusInfo").build()).build()).build()).build();
private static final SdkField STORAGE_TYPE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("StorageType").getter(getter(DBInstance::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(DBInstance::tdeCredentialArn))
.setter(setter(Builder::tdeCredentialArn))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("TdeCredentialArn").build()).build();
private static final SdkField DB_INSTANCE_PORT_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("DbInstancePort").getter(getter(DBInstance::dbInstancePort)).setter(setter(Builder::dbInstancePort))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DbInstancePort").build()).build();
private static final SdkField DB_CLUSTER_IDENTIFIER_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DBClusterIdentifier").getter(getter(DBInstance::dbClusterIdentifier))
.setter(setter(Builder::dbClusterIdentifier))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterIdentifier").build())
.build();
private static final SdkField STORAGE_ENCRYPTED_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("StorageEncrypted").getter(getter(DBInstance::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(DBInstance::kmsKeyId)).setter(setter(Builder::kmsKeyId))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("KmsKeyId").build()).build();
private static final SdkField DBI_RESOURCE_ID_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DbiResourceId").getter(getter(DBInstance::dbiResourceId)).setter(setter(Builder::dbiResourceId))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DbiResourceId").build()).build();
private static final SdkField CA_CERTIFICATE_IDENTIFIER_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("CACertificateIdentifier").getter(getter(DBInstance::caCertificateIdentifier))
.setter(setter(Builder::caCertificateIdentifier))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CACertificateIdentifier").build())
.build();
private static final SdkField> DOMAIN_MEMBERSHIPS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("DomainMemberships")
.getter(getter(DBInstance::domainMemberships))
.setter(setter(Builder::domainMemberships))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainMemberships").build(),
ListTrait
.builder()
.memberLocationName("DomainMembership")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(DomainMembership::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("DomainMembership").build()).build()).build()).build();
private static final SdkField COPY_TAGS_TO_SNAPSHOT_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("CopyTagsToSnapshot").getter(getter(DBInstance::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(DBInstance::monitoringInterval))
.setter(setter(Builder::monitoringInterval))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MonitoringInterval").build())
.build();
private static final SdkField ENHANCED_MONITORING_RESOURCE_ARN_FIELD = SdkField
. builder(MarshallingType.STRING)
.memberName("EnhancedMonitoringResourceArn")
.getter(getter(DBInstance::enhancedMonitoringResourceArn))
.setter(setter(Builder::enhancedMonitoringResourceArn))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EnhancedMonitoringResourceArn")
.build()).build();
private static final SdkField MONITORING_ROLE_ARN_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("MonitoringRoleArn").getter(getter(DBInstance::monitoringRoleArn))
.setter(setter(Builder::monitoringRoleArn))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MonitoringRoleArn").build()).build();
private static final SdkField PROMOTION_TIER_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("PromotionTier").getter(getter(DBInstance::promotionTier)).setter(setter(Builder::promotionTier))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PromotionTier").build()).build();
private static final SdkField DB_INSTANCE_ARN_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DBInstanceArn").getter(getter(DBInstance::dbInstanceArn)).setter(setter(Builder::dbInstanceArn))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBInstanceArn").build()).build();
private static final SdkField TIMEZONE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("Timezone").getter(getter(DBInstance::timezone)).setter(setter(Builder::timezone))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Timezone").build()).build();
private static final SdkField IAM_DATABASE_AUTHENTICATION_ENABLED_FIELD = SdkField
. builder(MarshallingType.BOOLEAN)
.memberName("IAMDatabaseAuthenticationEnabled")
.getter(getter(DBInstance::iamDatabaseAuthenticationEnabled))
.setter(setter(Builder::iamDatabaseAuthenticationEnabled))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("IAMDatabaseAuthenticationEnabled")
.build()).build();
private static final SdkField PERFORMANCE_INSIGHTS_ENABLED_FIELD = SdkField
. builder(MarshallingType.BOOLEAN)
.memberName("PerformanceInsightsEnabled")
.getter(getter(DBInstance::performanceInsightsEnabled))
.setter(setter(Builder::performanceInsightsEnabled))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PerformanceInsightsEnabled").build())
.build();
private static final SdkField PERFORMANCE_INSIGHTS_KMS_KEY_ID_FIELD = SdkField
. builder(MarshallingType.STRING)
.memberName("PerformanceInsightsKMSKeyId")
.getter(getter(DBInstance::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(DBInstance::performanceInsightsRetentionPeriod))
.setter(setter(Builder::performanceInsightsRetentionPeriod))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PerformanceInsightsRetentionPeriod")
.build()).build();
private static final SdkField> ENABLED_CLOUDWATCH_LOGS_EXPORTS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("EnabledCloudwatchLogsExports")
.getter(getter(DBInstance::enabledCloudwatchLogsExports))
.setter(setter(Builder::enabledCloudwatchLogsExports))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EnabledCloudwatchLogsExports")
.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(DBInstance::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(DBInstance::deletionProtection))
.setter(setter(Builder::deletionProtection))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DeletionProtection").build())
.build();
private static final SdkField> ASSOCIATED_ROLES_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("AssociatedRoles")
.getter(getter(DBInstance::associatedRoles))
.setter(setter(Builder::associatedRoles))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AssociatedRoles").build(),
ListTrait
.builder()
.memberLocationName("DBInstanceRole")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(DBInstanceRole::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("DBInstanceRole").build()).build()).build()).build();
private static final SdkField LISTENER_ENDPOINT_FIELD = SdkField. builder(MarshallingType.SDK_POJO)
.memberName("ListenerEndpoint").getter(getter(DBInstance::listenerEndpoint))
.setter(setter(Builder::listenerEndpoint)).constructor(Endpoint::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ListenerEndpoint").build()).build();
private static final SdkField MAX_ALLOCATED_STORAGE_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("MaxAllocatedStorage").getter(getter(DBInstance::maxAllocatedStorage))
.setter(setter(Builder::maxAllocatedStorage))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MaxAllocatedStorage").build())
.build();
private static final SdkField> TAG_LIST_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("TagList")
.getter(getter(DBInstance::tagList))
.setter(setter(Builder::tagList))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("TagList").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_INSTANCE_AUTOMATED_BACKUPS_REPLICATIONS_FIELD = SdkField
.> builder(MarshallingType.LIST)
.memberName("DBInstanceAutomatedBackupsReplications")
.getter(getter(DBInstance::dbInstanceAutomatedBackupsReplications))
.setter(setter(Builder::dbInstanceAutomatedBackupsReplications))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("DBInstanceAutomatedBackupsReplications").build(),
ListTrait
.builder()
.memberLocationName("DBInstanceAutomatedBackupsReplication")
.memberFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(DBInstanceAutomatedBackupsReplication::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("DBInstanceAutomatedBackupsReplication").build()).build())
.build()).build();
private static final SdkField CUSTOMER_OWNED_IP_ENABLED_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("CustomerOwnedIpEnabled").getter(getter(DBInstance::customerOwnedIpEnabled))
.setter(setter(Builder::customerOwnedIpEnabled))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CustomerOwnedIpEnabled").build())
.build();
private static final SdkField AWS_BACKUP_RECOVERY_POINT_ARN_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("AwsBackupRecoveryPointArn").getter(getter(DBInstance::awsBackupRecoveryPointArn))
.setter(setter(Builder::awsBackupRecoveryPointArn))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AwsBackupRecoveryPointArn").build())
.build();
private static final SdkField ACTIVITY_STREAM_STATUS_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("ActivityStreamStatus").getter(getter(DBInstance::activityStreamStatusAsString))
.setter(setter(Builder::activityStreamStatus))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ActivityStreamStatus").build())
.build();
private static final SdkField ACTIVITY_STREAM_KMS_KEY_ID_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("ActivityStreamKmsKeyId").getter(getter(DBInstance::activityStreamKmsKeyId))
.setter(setter(Builder::activityStreamKmsKeyId))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ActivityStreamKmsKeyId").build())
.build();
private static final SdkField ACTIVITY_STREAM_KINESIS_STREAM_NAME_FIELD = SdkField
. builder(MarshallingType.STRING)
.memberName("ActivityStreamKinesisStreamName")
.getter(getter(DBInstance::activityStreamKinesisStreamName))
.setter(setter(Builder::activityStreamKinesisStreamName))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ActivityStreamKinesisStreamName")
.build()).build();
private static final SdkField ACTIVITY_STREAM_MODE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("ActivityStreamMode").getter(getter(DBInstance::activityStreamModeAsString))
.setter(setter(Builder::activityStreamMode))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ActivityStreamMode").build())
.build();
private static final SdkField ACTIVITY_STREAM_ENGINE_NATIVE_AUDIT_FIELDS_INCLUDED_FIELD = SdkField
. builder(MarshallingType.BOOLEAN)
.memberName("ActivityStreamEngineNativeAuditFieldsIncluded")
.getter(getter(DBInstance::activityStreamEngineNativeAuditFieldsIncluded))
.setter(setter(Builder::activityStreamEngineNativeAuditFieldsIncluded))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("ActivityStreamEngineNativeAuditFieldsIncluded").build()).build();
private static final SdkField AUTOMATION_MODE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("AutomationMode").getter(getter(DBInstance::automationModeAsString))
.setter(setter(Builder::automationMode))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AutomationMode").build()).build();
private static final SdkField RESUME_FULL_AUTOMATION_MODE_TIME_FIELD = SdkField
. builder(MarshallingType.INSTANT)
.memberName("ResumeFullAutomationModeTime")
.getter(getter(DBInstance::resumeFullAutomationModeTime))
.setter(setter(Builder::resumeFullAutomationModeTime))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ResumeFullAutomationModeTime")
.build()).build();
private static final SdkField CUSTOM_IAM_INSTANCE_PROFILE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("CustomIamInstanceProfile").getter(getter(DBInstance::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(DBInstance::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(DBInstance::networkType)).setter(setter(Builder::networkType))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("NetworkType").build()).build();
private static final SdkField ACTIVITY_STREAM_POLICY_STATUS_FIELD = SdkField
. builder(MarshallingType.STRING)
.memberName("ActivityStreamPolicyStatus")
.getter(getter(DBInstance::activityStreamPolicyStatusAsString))
.setter(setter(Builder::activityStreamPolicyStatus))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ActivityStreamPolicyStatus").build())
.build();
private static final SdkField STORAGE_THROUGHPUT_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("StorageThroughput").getter(getter(DBInstance::storageThroughput))
.setter(setter(Builder::storageThroughput))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("StorageThroughput").build()).build();
private static final SdkField DB_SYSTEM_ID_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DBSystemId").getter(getter(DBInstance::dbSystemId)).setter(setter(Builder::dbSystemId))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBSystemId").build()).build();
private static final SdkField MASTER_USER_SECRET_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("MasterUserSecret")
.getter(getter(DBInstance::masterUserSecret)).setter(setter(Builder::masterUserSecret))
.constructor(MasterUserSecret::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MasterUserSecret").build()).build();
private static final SdkField CERTIFICATE_DETAILS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("CertificateDetails")
.getter(getter(DBInstance::certificateDetails)).setter(setter(Builder::certificateDetails))
.constructor(CertificateDetails::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CertificateDetails").build())
.build();
private static final SdkField READ_REPLICA_SOURCE_DB_CLUSTER_IDENTIFIER_FIELD = SdkField
. builder(MarshallingType.STRING)
.memberName("ReadReplicaSourceDBClusterIdentifier")
.getter(getter(DBInstance::readReplicaSourceDBClusterIdentifier))
.setter(setter(Builder::readReplicaSourceDBClusterIdentifier))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("ReadReplicaSourceDBClusterIdentifier").build()).build();
private static final SdkField PERCENT_PROGRESS_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("PercentProgress").getter(getter(DBInstance::percentProgress)).setter(setter(Builder::percentProgress))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PercentProgress").build()).build();
private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(DB_INSTANCE_IDENTIFIER_FIELD,
DB_INSTANCE_CLASS_FIELD, ENGINE_FIELD, DB_INSTANCE_STATUS_FIELD, AUTOMATIC_RESTART_TIME_FIELD, MASTER_USERNAME_FIELD,
DB_NAME_FIELD, ENDPOINT_FIELD, ALLOCATED_STORAGE_FIELD, INSTANCE_CREATE_TIME_FIELD, PREFERRED_BACKUP_WINDOW_FIELD,
BACKUP_RETENTION_PERIOD_FIELD, DB_SECURITY_GROUPS_FIELD, VPC_SECURITY_GROUPS_FIELD, DB_PARAMETER_GROUPS_FIELD,
AVAILABILITY_ZONE_FIELD, DB_SUBNET_GROUP_FIELD, PREFERRED_MAINTENANCE_WINDOW_FIELD, PENDING_MODIFIED_VALUES_FIELD,
LATEST_RESTORABLE_TIME_FIELD, MULTI_AZ_FIELD, ENGINE_VERSION_FIELD, AUTO_MINOR_VERSION_UPGRADE_FIELD,
READ_REPLICA_SOURCE_DB_INSTANCE_IDENTIFIER_FIELD, READ_REPLICA_DB_INSTANCE_IDENTIFIERS_FIELD,
READ_REPLICA_DB_CLUSTER_IDENTIFIERS_FIELD, REPLICA_MODE_FIELD, LICENSE_MODEL_FIELD, IOPS_FIELD,
OPTION_GROUP_MEMBERSHIPS_FIELD, CHARACTER_SET_NAME_FIELD, NCHAR_CHARACTER_SET_NAME_FIELD,
SECONDARY_AVAILABILITY_ZONE_FIELD, PUBLICLY_ACCESSIBLE_FIELD, STATUS_INFOS_FIELD, STORAGE_TYPE_FIELD,
TDE_CREDENTIAL_ARN_FIELD, DB_INSTANCE_PORT_FIELD, DB_CLUSTER_IDENTIFIER_FIELD, STORAGE_ENCRYPTED_FIELD,
KMS_KEY_ID_FIELD, DBI_RESOURCE_ID_FIELD, CA_CERTIFICATE_IDENTIFIER_FIELD, DOMAIN_MEMBERSHIPS_FIELD,
COPY_TAGS_TO_SNAPSHOT_FIELD, MONITORING_INTERVAL_FIELD, ENHANCED_MONITORING_RESOURCE_ARN_FIELD,
MONITORING_ROLE_ARN_FIELD, PROMOTION_TIER_FIELD, DB_INSTANCE_ARN_FIELD, TIMEZONE_FIELD,
IAM_DATABASE_AUTHENTICATION_ENABLED_FIELD, PERFORMANCE_INSIGHTS_ENABLED_FIELD, PERFORMANCE_INSIGHTS_KMS_KEY_ID_FIELD,
PERFORMANCE_INSIGHTS_RETENTION_PERIOD_FIELD, ENABLED_CLOUDWATCH_LOGS_EXPORTS_FIELD, PROCESSOR_FEATURES_FIELD,
DELETION_PROTECTION_FIELD, ASSOCIATED_ROLES_FIELD, LISTENER_ENDPOINT_FIELD, MAX_ALLOCATED_STORAGE_FIELD,
TAG_LIST_FIELD, DB_INSTANCE_AUTOMATED_BACKUPS_REPLICATIONS_FIELD, CUSTOMER_OWNED_IP_ENABLED_FIELD,
AWS_BACKUP_RECOVERY_POINT_ARN_FIELD, ACTIVITY_STREAM_STATUS_FIELD, ACTIVITY_STREAM_KMS_KEY_ID_FIELD,
ACTIVITY_STREAM_KINESIS_STREAM_NAME_FIELD, ACTIVITY_STREAM_MODE_FIELD,
ACTIVITY_STREAM_ENGINE_NATIVE_AUDIT_FIELDS_INCLUDED_FIELD, AUTOMATION_MODE_FIELD,
RESUME_FULL_AUTOMATION_MODE_TIME_FIELD, CUSTOM_IAM_INSTANCE_PROFILE_FIELD, BACKUP_TARGET_FIELD, NETWORK_TYPE_FIELD,
ACTIVITY_STREAM_POLICY_STATUS_FIELD, STORAGE_THROUGHPUT_FIELD, DB_SYSTEM_ID_FIELD, MASTER_USER_SECRET_FIELD,
CERTIFICATE_DETAILS_FIELD, READ_REPLICA_SOURCE_DB_CLUSTER_IDENTIFIER_FIELD, PERCENT_PROGRESS_FIELD));
private static final long serialVersionUID = 1L;
private final String dbInstanceIdentifier;
private final String dbInstanceClass;
private final String engine;
private final String dbInstanceStatus;
private final Instant automaticRestartTime;
private final String masterUsername;
private final String dbName;
private final Endpoint endpoint;
private final Integer allocatedStorage;
private final Instant instanceCreateTime;
private final String preferredBackupWindow;
private final Integer backupRetentionPeriod;
private final List dbSecurityGroups;
private final List vpcSecurityGroups;
private final List dbParameterGroups;
private final String availabilityZone;
private final DBSubnetGroup dbSubnetGroup;
private final String preferredMaintenanceWindow;
private final PendingModifiedValues pendingModifiedValues;
private final Instant latestRestorableTime;
private final Boolean multiAZ;
private final String engineVersion;
private final Boolean autoMinorVersionUpgrade;
private final String readReplicaSourceDBInstanceIdentifier;
private final List readReplicaDBInstanceIdentifiers;
private final List readReplicaDBClusterIdentifiers;
private final String replicaMode;
private final String licenseModel;
private final Integer iops;
private final List optionGroupMemberships;
private final String characterSetName;
private final String ncharCharacterSetName;
private final String secondaryAvailabilityZone;
private final Boolean publiclyAccessible;
private final List statusInfos;
private final String storageType;
private final String tdeCredentialArn;
private final Integer dbInstancePort;
private final String dbClusterIdentifier;
private final Boolean storageEncrypted;
private final String kmsKeyId;
private final String dbiResourceId;
private final String caCertificateIdentifier;
private final List domainMemberships;
private final Boolean copyTagsToSnapshot;
private final Integer monitoringInterval;
private final String enhancedMonitoringResourceArn;
private final String monitoringRoleArn;
private final Integer promotionTier;
private final String dbInstanceArn;
private final String timezone;
private final Boolean iamDatabaseAuthenticationEnabled;
private final Boolean performanceInsightsEnabled;
private final String performanceInsightsKMSKeyId;
private final Integer performanceInsightsRetentionPeriod;
private final List enabledCloudwatchLogsExports;
private final List processorFeatures;
private final Boolean deletionProtection;
private final List associatedRoles;
private final Endpoint listenerEndpoint;
private final Integer maxAllocatedStorage;
private final List tagList;
private final List dbInstanceAutomatedBackupsReplications;
private final Boolean customerOwnedIpEnabled;
private final String awsBackupRecoveryPointArn;
private final String activityStreamStatus;
private final String activityStreamKmsKeyId;
private final String activityStreamKinesisStreamName;
private final String activityStreamMode;
private final Boolean activityStreamEngineNativeAuditFieldsIncluded;
private final String automationMode;
private final Instant resumeFullAutomationModeTime;
private final String customIamInstanceProfile;
private final String backupTarget;
private final String networkType;
private final String activityStreamPolicyStatus;
private final Integer storageThroughput;
private final String dbSystemId;
private final MasterUserSecret masterUserSecret;
private final CertificateDetails certificateDetails;
private final String readReplicaSourceDBClusterIdentifier;
private final String percentProgress;
private DBInstance(BuilderImpl builder) {
this.dbInstanceIdentifier = builder.dbInstanceIdentifier;
this.dbInstanceClass = builder.dbInstanceClass;
this.engine = builder.engine;
this.dbInstanceStatus = builder.dbInstanceStatus;
this.automaticRestartTime = builder.automaticRestartTime;
this.masterUsername = builder.masterUsername;
this.dbName = builder.dbName;
this.endpoint = builder.endpoint;
this.allocatedStorage = builder.allocatedStorage;
this.instanceCreateTime = builder.instanceCreateTime;
this.preferredBackupWindow = builder.preferredBackupWindow;
this.backupRetentionPeriod = builder.backupRetentionPeriod;
this.dbSecurityGroups = builder.dbSecurityGroups;
this.vpcSecurityGroups = builder.vpcSecurityGroups;
this.dbParameterGroups = builder.dbParameterGroups;
this.availabilityZone = builder.availabilityZone;
this.dbSubnetGroup = builder.dbSubnetGroup;
this.preferredMaintenanceWindow = builder.preferredMaintenanceWindow;
this.pendingModifiedValues = builder.pendingModifiedValues;
this.latestRestorableTime = builder.latestRestorableTime;
this.multiAZ = builder.multiAZ;
this.engineVersion = builder.engineVersion;
this.autoMinorVersionUpgrade = builder.autoMinorVersionUpgrade;
this.readReplicaSourceDBInstanceIdentifier = builder.readReplicaSourceDBInstanceIdentifier;
this.readReplicaDBInstanceIdentifiers = builder.readReplicaDBInstanceIdentifiers;
this.readReplicaDBClusterIdentifiers = builder.readReplicaDBClusterIdentifiers;
this.replicaMode = builder.replicaMode;
this.licenseModel = builder.licenseModel;
this.iops = builder.iops;
this.optionGroupMemberships = builder.optionGroupMemberships;
this.characterSetName = builder.characterSetName;
this.ncharCharacterSetName = builder.ncharCharacterSetName;
this.secondaryAvailabilityZone = builder.secondaryAvailabilityZone;
this.publiclyAccessible = builder.publiclyAccessible;
this.statusInfos = builder.statusInfos;
this.storageType = builder.storageType;
this.tdeCredentialArn = builder.tdeCredentialArn;
this.dbInstancePort = builder.dbInstancePort;
this.dbClusterIdentifier = builder.dbClusterIdentifier;
this.storageEncrypted = builder.storageEncrypted;
this.kmsKeyId = builder.kmsKeyId;
this.dbiResourceId = builder.dbiResourceId;
this.caCertificateIdentifier = builder.caCertificateIdentifier;
this.domainMemberships = builder.domainMemberships;
this.copyTagsToSnapshot = builder.copyTagsToSnapshot;
this.monitoringInterval = builder.monitoringInterval;
this.enhancedMonitoringResourceArn = builder.enhancedMonitoringResourceArn;
this.monitoringRoleArn = builder.monitoringRoleArn;
this.promotionTier = builder.promotionTier;
this.dbInstanceArn = builder.dbInstanceArn;
this.timezone = builder.timezone;
this.iamDatabaseAuthenticationEnabled = builder.iamDatabaseAuthenticationEnabled;
this.performanceInsightsEnabled = builder.performanceInsightsEnabled;
this.performanceInsightsKMSKeyId = builder.performanceInsightsKMSKeyId;
this.performanceInsightsRetentionPeriod = builder.performanceInsightsRetentionPeriod;
this.enabledCloudwatchLogsExports = builder.enabledCloudwatchLogsExports;
this.processorFeatures = builder.processorFeatures;
this.deletionProtection = builder.deletionProtection;
this.associatedRoles = builder.associatedRoles;
this.listenerEndpoint = builder.listenerEndpoint;
this.maxAllocatedStorage = builder.maxAllocatedStorage;
this.tagList = builder.tagList;
this.dbInstanceAutomatedBackupsReplications = builder.dbInstanceAutomatedBackupsReplications;
this.customerOwnedIpEnabled = builder.customerOwnedIpEnabled;
this.awsBackupRecoveryPointArn = builder.awsBackupRecoveryPointArn;
this.activityStreamStatus = builder.activityStreamStatus;
this.activityStreamKmsKeyId = builder.activityStreamKmsKeyId;
this.activityStreamKinesisStreamName = builder.activityStreamKinesisStreamName;
this.activityStreamMode = builder.activityStreamMode;
this.activityStreamEngineNativeAuditFieldsIncluded = builder.activityStreamEngineNativeAuditFieldsIncluded;
this.automationMode = builder.automationMode;
this.resumeFullAutomationModeTime = builder.resumeFullAutomationModeTime;
this.customIamInstanceProfile = builder.customIamInstanceProfile;
this.backupTarget = builder.backupTarget;
this.networkType = builder.networkType;
this.activityStreamPolicyStatus = builder.activityStreamPolicyStatus;
this.storageThroughput = builder.storageThroughput;
this.dbSystemId = builder.dbSystemId;
this.masterUserSecret = builder.masterUserSecret;
this.certificateDetails = builder.certificateDetails;
this.readReplicaSourceDBClusterIdentifier = builder.readReplicaSourceDBClusterIdentifier;
this.percentProgress = builder.percentProgress;
}
/**
*
* The user-supplied database identifier. This identifier is the unique key that identifies a DB instance.
*
*
* @return The user-supplied database identifier. This identifier is the unique key that identifies a DB instance.
*/
public final String dbInstanceIdentifier() {
return dbInstanceIdentifier;
}
/**
*
* The name of the compute and memory capacity class of the DB instance.
*
*
* @return The name of the compute and memory capacity class of the DB instance.
*/
public final String dbInstanceClass() {
return dbInstanceClass;
}
/**
*
* The database engine used for this DB instance.
*
*
* @return The database engine used for this DB instance.
*/
public final String engine() {
return engine;
}
/**
*
* The current state of this database.
*
*
* For information about DB instance statuses, see Viewing DB instance status in the Amazon RDS User Guide.
*
*
* @return The current state of this database.
*
* For information about DB instance statuses, see Viewing DB instance status in the Amazon RDS User Guide.
*/
public final String dbInstanceStatus() {
return dbInstanceStatus;
}
/**
*
* The time when a stopped DB instance is restarted automatically.
*
*
* @return The time when a stopped DB instance is restarted automatically.
*/
public final Instant automaticRestartTime() {
return automaticRestartTime;
}
/**
*
* The master username for the DB instance.
*
*
* @return The master username for the DB instance.
*/
public final String masterUsername() {
return masterUsername;
}
/**
*
* Contains the initial database name that you provided (if required) when you created the DB instance. This name is
* returned for the life of your DB instance. For an RDS for Oracle CDB instance, the name identifies the PDB rather
* than the CDB.
*
*
* @return Contains the initial database name that you provided (if required) when you created the DB instance. This
* name is returned for the life of your DB instance. For an RDS for Oracle CDB instance, the name
* identifies the PDB rather than the CDB.
*/
public final String dbName() {
return dbName;
}
/**
*
* The connection endpoint for the DB instance.
*
*
*
* The endpoint might not be shown for instances with the status of creating
.
*
*
*
* @return The connection endpoint for the DB instance.
*
* The endpoint might not be shown for instances with the status of creating
.
*
*/
public final Endpoint endpoint() {
return endpoint;
}
/**
*
* The amount of storage in gibibytes (GiB) allocated for the DB instance.
*
*
* @return The amount of storage in gibibytes (GiB) allocated for the DB instance.
*/
public final Integer allocatedStorage() {
return allocatedStorage;
}
/**
*
* The date and time when the DB instance was created.
*
*
* @return The date and time when the DB instance was created.
*/
public final Instant instanceCreateTime() {
return instanceCreateTime;
}
/**
*
* The daily time range during which automated backups are created if automated backups are enabled, as determined
* by the BackupRetentionPeriod
.
*
*
* @return The daily time range during which automated backups are created if automated backups are enabled, as
* determined by the BackupRetentionPeriod
.
*/
public final String preferredBackupWindow() {
return preferredBackupWindow;
}
/**
*
* The number of days for which automatic DB snapshots are retained.
*
*
* @return The number of days for which automatic DB snapshots are retained.
*/
public final Integer backupRetentionPeriod() {
return backupRetentionPeriod;
}
/**
* 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 group elements containing DBSecurityGroup.Name
and
* DBSecurityGroup.Status
subelements.
*
*
* 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 group elements containing DBSecurityGroup.Name
and
* DBSecurityGroup.Status
subelements.
*/
public final List dbSecurityGroups() {
return dbSecurityGroups;
}
/**
* For responses, this returns true if the service returned a value for the VpcSecurityGroups 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 hasVpcSecurityGroups() {
return vpcSecurityGroups != null && !(vpcSecurityGroups instanceof SdkAutoConstructList);
}
/**
*
* The list of Amazon EC2 VPC security groups that the DB instance belongs to.
*
*
* 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 #hasVpcSecurityGroups} method.
*
*
* @return The list of Amazon EC2 VPC security groups that the DB instance belongs to.
*/
public final List vpcSecurityGroups() {
return vpcSecurityGroups;
}
/**
* For responses, this returns true if the service returned a value for the DBParameterGroups 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 hasDbParameterGroups() {
return dbParameterGroups != null && !(dbParameterGroups instanceof SdkAutoConstructList);
}
/**
*
* The list of DB parameter groups applied to this 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 #hasDbParameterGroups} method.
*
*
* @return The list of DB parameter groups applied to this DB instance.
*/
public final List dbParameterGroups() {
return dbParameterGroups;
}
/**
*
* The name of the Availability Zone where the DB instance is located.
*
*
* @return The name of the Availability Zone where the DB instance is located.
*/
public final String availabilityZone() {
return availabilityZone;
}
/**
*
* Information about the subnet group associated with the DB instance, including the name, description, and subnets
* in the subnet group.
*
*
* @return Information about the subnet group associated with the DB instance, including the name, description, and
* subnets in the subnet group.
*/
public final DBSubnetGroup dbSubnetGroup() {
return dbSubnetGroup;
}
/**
*
* The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
*
*
* @return The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
*/
public final String preferredMaintenanceWindow() {
return preferredMaintenanceWindow;
}
/**
*
* Information about pending changes to the DB instance. This information is returned only when there are pending
* changes. Specific changes are identified by subelements.
*
*
* @return Information about pending changes to the DB instance. This information is returned only when there are
* pending changes. Specific changes are identified by subelements.
*/
public final PendingModifiedValues pendingModifiedValues() {
return pendingModifiedValues;
}
/**
*
* The latest time to which a database in this DB instance can be restored with point-in-time restore.
*
*
* @return The latest time to which a database in this DB instance can be restored with point-in-time restore.
*/
public final Instant latestRestorableTime() {
return latestRestorableTime;
}
/**
*
* Indicates whether the DB instance is a Multi-AZ deployment. This setting doesn't apply to RDS Custom DB
* instances.
*
*
* @return Indicates whether the DB instance is a Multi-AZ deployment. This setting doesn't apply to RDS Custom DB
* instances.
*/
public final Boolean multiAZ() {
return multiAZ;
}
/**
*
* The version of the database engine.
*
*
* @return The version of the database engine.
*/
public final String engineVersion() {
return engineVersion;
}
/**
*
* Indicates whether minor version patches are applied automatically.
*
*
* @return Indicates whether minor version patches are applied automatically.
*/
public final Boolean autoMinorVersionUpgrade() {
return autoMinorVersionUpgrade;
}
/**
*
* The identifier of the source DB instance if this DB instance is a read replica.
*
*
* @return The identifier of the source DB instance if this DB instance is a read replica.
*/
public final String readReplicaSourceDBInstanceIdentifier() {
return readReplicaSourceDBInstanceIdentifier;
}
/**
* For responses, this returns true if the service returned a value for the ReadReplicaDBInstanceIdentifiers
* 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 hasReadReplicaDBInstanceIdentifiers() {
return readReplicaDBInstanceIdentifiers != null && !(readReplicaDBInstanceIdentifiers instanceof SdkAutoConstructList);
}
/**
*
* The identifiers of the read replicas associated with this 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 #hasReadReplicaDBInstanceIdentifiers}
* method.
*
*
* @return The identifiers of the read replicas associated with this DB instance.
*/
public final List readReplicaDBInstanceIdentifiers() {
return readReplicaDBInstanceIdentifiers;
}
/**
* For responses, this returns true if the service returned a value for the ReadReplicaDBClusterIdentifiers
* 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 hasReadReplicaDBClusterIdentifiers() {
return readReplicaDBClusterIdentifiers != null && !(readReplicaDBClusterIdentifiers instanceof SdkAutoConstructList);
}
/**
*
* The identifiers of Aurora DB clusters to which the RDS DB instance is replicated as a read replica. For example,
* when you create an Aurora read replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the
* Aurora read replica is shown. This output doesn't contain information about cross-Region Aurora read replicas.
*
*
*
* Currently, each RDS DB instance can have only one Aurora read replica.
*
*
*
* 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 #hasReadReplicaDBClusterIdentifiers}
* method.
*
*
* @return The identifiers of Aurora DB clusters to which the RDS DB instance is replicated as a read replica. For
* example, when you create an Aurora read replica of an RDS for MySQL DB instance, the Aurora MySQL DB
* cluster for the Aurora read replica is shown. This output doesn't contain information about cross-Region
* Aurora read replicas.
*
* Currently, each RDS DB instance can have only one Aurora read replica.
*
*/
public final List readReplicaDBClusterIdentifiers() {
return readReplicaDBClusterIdentifiers;
}
/**
*
* The open mode of an Oracle read replica. The default is open-read-only
. For more information, see Working with Oracle Read
* Replicas for Amazon RDS in the Amazon RDS User Guide.
*
*
*
* This attribute is only supported in RDS for Oracle.
*
*
*
* If the service returns an enum value that is not available in the current SDK version, {@link #replicaMode} will
* return {@link ReplicaMode#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from
* {@link #replicaModeAsString}.
*
*
* @return The open mode of an Oracle read replica. The default is open-read-only
. For more
* information, see Working with
* Oracle Read Replicas for Amazon RDS in the Amazon RDS User Guide.
*
* This attribute is only supported in RDS for Oracle.
*
* @see ReplicaMode
*/
public final ReplicaMode replicaMode() {
return ReplicaMode.fromValue(replicaMode);
}
/**
*
* The open mode of an Oracle read replica. The default is open-read-only
. For more information, see Working with Oracle Read
* Replicas for Amazon RDS in the Amazon RDS User Guide.
*
*
*
* This attribute is only supported in RDS for Oracle.
*
*
*
* If the service returns an enum value that is not available in the current SDK version, {@link #replicaMode} will
* return {@link ReplicaMode#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from
* {@link #replicaModeAsString}.
*
*
* @return The open mode of an Oracle read replica. The default is open-read-only
. For more
* information, see Working with
* Oracle Read Replicas for Amazon RDS in the Amazon RDS User Guide.
*
* This attribute is only supported in RDS for Oracle.
*
* @see ReplicaMode
*/
public final String replicaModeAsString() {
return replicaMode;
}
/**
*
* The license model information for this DB instance. This setting doesn't apply to RDS Custom DB instances.
*
*
* @return The license model information for this DB instance. This setting doesn't apply to RDS Custom DB
* instances.
*/
public final String licenseModel() {
return licenseModel;
}
/**
*
* The Provisioned IOPS (I/O operations per second) value for the DB instance.
*
*
* @return The Provisioned IOPS (I/O operations per second) value for the DB instance.
*/
public final Integer iops() {
return iops;
}
/**
* For responses, this returns true if the service returned a value for the OptionGroupMemberships 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 hasOptionGroupMemberships() {
return optionGroupMemberships != null && !(optionGroupMemberships instanceof SdkAutoConstructList);
}
/**
*
* The list of option group memberships for this 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 #hasOptionGroupMemberships} method.
*
*
* @return The list of option group memberships for this DB instance.
*/
public final List optionGroupMemberships() {
return optionGroupMemberships;
}
/**
*
* If present, specifies the name of the character set that this instance is associated with.
*
*
* @return If present, specifies the name of the character set that this instance is associated with.
*/
public final String characterSetName() {
return characterSetName;
}
/**
*
* The name of the NCHAR character set for the Oracle DB instance. This character set specifies the Unicode encoding
* for data stored in table columns of type NCHAR, NCLOB, or NVARCHAR2.
*
*
* @return The name of the NCHAR character set for the Oracle DB instance. This character set specifies the Unicode
* encoding for data stored in table columns of type NCHAR, NCLOB, or NVARCHAR2.
*/
public final String ncharCharacterSetName() {
return ncharCharacterSetName;
}
/**
*
* If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ support.
*
*
* @return If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ
* support.
*/
public final String secondaryAvailabilityZone() {
return secondaryAvailabilityZone;
}
/**
*
* Indicates whether the DB instance is publicly accessible.
*
*
* When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP
* address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from
* outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses.
* That public access isn't permitted if the security group assigned to the DB cluster 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.
*
*
* For more information, see CreateDBInstance.
*
*
* @return Indicates whether the DB instance is publicly accessible.
*
* When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private
* IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address
* from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security
* group it uses. That public access isn't permitted if the security group assigned to the DB cluster
* 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.
*
*
* For more information, see CreateDBInstance.
*/
public final Boolean publiclyAccessible() {
return publiclyAccessible;
}
/**
* For responses, this returns true if the service returned a value for the StatusInfos 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 hasStatusInfos() {
return statusInfos != null && !(statusInfos instanceof SdkAutoConstructList);
}
/**
*
* The status of a read replica. If the DB instance isn't a read replica, the value is blank.
*
*
* 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 #hasStatusInfos} method.
*
*
* @return The status of a read replica. If the DB instance isn't a read replica, the value is blank.
*/
public final List statusInfos() {
return statusInfos;
}
/**
*
* The storage type associated with the DB instance.
*
*
* @return The storage type associated with the DB instance.
*/
public final String storageType() {
return storageType;
}
/**
*
* The ARN from the key store with which the instance is associated for TDE encryption.
*
*
* @return The ARN from the key store with which the instance is associated for TDE encryption.
*/
public final String tdeCredentialArn() {
return tdeCredentialArn;
}
/**
*
* The port that the DB instance listens on. If the DB instance is part of a DB cluster, this can be a different
* port than the DB cluster port.
*
*
* @return The port that the DB instance listens on. If the DB instance is part of a DB cluster, this can be a
* different port than the DB cluster port.
*/
public final Integer dbInstancePort() {
return dbInstancePort;
}
/**
*
* If the DB instance is a member of a DB cluster, indicates the name of the DB cluster that the DB instance is a
* member of.
*
*
* @return If the DB instance is a member of a DB cluster, indicates the name of the DB cluster that the DB instance
* is a member of.
*/
public final String dbClusterIdentifier() {
return dbClusterIdentifier;
}
/**
*
* Indicates whether the DB instance is encrypted.
*
*
* @return Indicates whether the DB instance is encrypted.
*/
public final Boolean storageEncrypted() {
return storageEncrypted;
}
/**
*
* If StorageEncrypted
is enabled, the Amazon Web Services KMS key identifier for the 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.
*
*
* @return If StorageEncrypted
is enabled, the Amazon Web Services KMS key identifier for the 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.
*/
public final String kmsKeyId() {
return kmsKeyId;
}
/**
*
* The Amazon Web Services Region-unique, immutable identifier for the DB instance. This identifier is found in
* Amazon Web Services CloudTrail log entries whenever the Amazon Web Services KMS key for the DB instance is
* accessed.
*
*
* @return The Amazon Web Services Region-unique, immutable identifier for the DB instance. This identifier is found
* in Amazon Web Services CloudTrail log entries whenever the Amazon Web Services KMS key for the DB
* instance is accessed.
*/
public final String dbiResourceId() {
return dbiResourceId;
}
/**
*
* The identifier of the CA certificate for this DB instance.
*
*
* 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 identifier of the CA certificate for this DB instance.
*
* 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;
}
/**
* For responses, this returns true if the service returned a value for the DomainMemberships 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 hasDomainMemberships() {
return domainMemberships != null && !(domainMemberships instanceof SdkAutoConstructList);
}
/**
*
* The Active Directory Domain membership records associated with 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 #hasDomainMemberships} method.
*
*
* @return The Active Directory Domain membership records associated with the DB instance.
*/
public final List domainMemberships() {
return domainMemberships;
}
/**
*
* Indicates whether tags are copied from the DB instance to snapshots of the DB instance.
*
*
* 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. For more information, see
* DBCluster
.
*
*
* @return Indicates whether tags are copied from the DB instance to snapshots of the DB instance.
*
* 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. For more
* information, see DBCluster
.
*/
public final Boolean copyTagsToSnapshot() {
return copyTagsToSnapshot;
}
/**
*
* The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance.
*
*
* @return The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB
* instance.
*/
public final Integer monitoringInterval() {
return monitoringInterval;
}
/**
*
* The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that receives the Enhanced Monitoring
* metrics data for the DB instance.
*
*
* @return The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that receives the Enhanced
* Monitoring metrics data for the DB instance.
*/
public final String enhancedMonitoringResourceArn() {
return enhancedMonitoringResourceArn;
}
/**
*
* The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs.
*
*
* @return The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs.
*/
public final String monitoringRoleArn() {
return monitoringRoleArn;
}
/**
*
* 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.
*
*
* @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.
*/
public final Integer promotionTier() {
return promotionTier;
}
/**
*
* The Amazon Resource Name (ARN) for the DB instance.
*
*
* @return The Amazon Resource Name (ARN) for the DB instance.
*/
public final String dbInstanceArn() {
return dbInstanceArn;
}
/**
*
* The time zone of the DB instance. In most cases, the Timezone
element is empty.
* Timezone
content appears only for Microsoft SQL Server DB instances that were created with a time
* zone specified.
*
*
* @return The time zone of the DB instance. In most cases, the Timezone
element is empty.
* Timezone
content appears only for Microsoft SQL Server DB instances that were created with a
* time zone specified.
*/
public final String timezone() {
return timezone;
}
/**
*
* Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database
* accounts is enabled for the DB instance.
*
*
* For a list of engine versions that support IAM database authentication, see IAM database authentication in the Amazon RDS User Guide and IAM database authentication in Aurora in the Amazon Aurora User Guide.
*
*
* @return Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to
* database accounts is enabled for the DB instance.
*
* For a list of engine versions that support IAM database authentication, see IAM database authentication in the Amazon RDS User Guide and IAM database authentication in Aurora in the Amazon Aurora User Guide.
*/
public final Boolean iamDatabaseAuthenticationEnabled() {
return iamDatabaseAuthenticationEnabled;
}
/**
*
* Indicates whether Performance Insights is enabled for the DB instance.
*
*
* @return Indicates whether Performance Insights is enabled for the DB instance.
*/
public final Boolean performanceInsightsEnabled() {
return performanceInsightsEnabled;
}
/**
*
* 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.
*
*
* @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.
*/
public final String performanceInsightsKMSKeyId() {
return performanceInsightsKMSKeyId;
}
/**
*
* The number of days to retain Performance Insights data.
*
*
* 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
*
*
* @return The number of days to retain Performance Insights data.
*
* 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
*/
public final Integer performanceInsightsRetentionPeriod() {
return performanceInsightsRetentionPeriod;
}
/**
* For responses, this returns true if the service returned a value for the EnabledCloudwatchLogsExports 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 hasEnabledCloudwatchLogsExports() {
return enabledCloudwatchLogsExports != null && !(enabledCloudwatchLogsExports instanceof SdkAutoConstructList);
}
/**
*
* A list of log types that this DB instance is configured to export to CloudWatch Logs.
*
*
* Log types vary by DB engine. For information about the log types for each DB engine, see Monitoring Amazon RDS log
* files in the Amazon RDS User Guide.
*
*
* 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 #hasEnabledCloudwatchLogsExports} method.
*
*
* @return A list of log types that this DB instance is configured to export to CloudWatch Logs.
*
* Log types vary by DB engine. For information about the log types for each DB engine, see Monitoring Amazon RDS
* log files in the Amazon RDS User Guide.
*/
public final List enabledCloudwatchLogsExports() {
return enabledCloudwatchLogsExports;
}
/**
* 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.
*
*
* 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.
*/
public final List processorFeatures() {
return processorFeatures;
}
/**
*
* Indicates whether the DB instance has deletion protection enabled. The database can't be deleted when deletion
* protection is enabled. For more information, see Deleting a DB
* Instance.
*
*
* @return Indicates whether the DB instance has deletion protection enabled. The database can't be deleted when
* deletion protection is enabled. For more information, see Deleting a DB
* Instance.
*/
public final Boolean deletionProtection() {
return deletionProtection;
}
/**
* For responses, this returns true if the service returned a value for the AssociatedRoles 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 hasAssociatedRoles() {
return associatedRoles != null && !(associatedRoles instanceof SdkAutoConstructList);
}
/**
*
* The Amazon Web Services Identity and Access Management (IAM) roles associated with 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 #hasAssociatedRoles} method.
*
*
* @return The Amazon Web Services Identity and Access Management (IAM) roles associated with the DB instance.
*/
public final List associatedRoles() {
return associatedRoles;
}
/**
*
* The listener connection endpoint for SQL Server Always On.
*
*
* @return The listener connection endpoint for SQL Server Always On.
*/
public final Endpoint listenerEndpoint() {
return listenerEndpoint;
}
/**
*
* The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.
*
*
* @return The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB
* instance.
*/
public final Integer maxAllocatedStorage() {
return maxAllocatedStorage;
}
/**
* For responses, this returns true if the service returned a value for the TagList 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 hasTagList() {
return tagList != null && !(tagList instanceof SdkAutoConstructList);
}
/**
* Returns the value of the TagList property for this object.
*
* 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 #hasTagList} method.
*
*
* @return The value of the TagList property for this object.
*/
public final List tagList() {
return tagList;
}
/**
* For responses, this returns true if the service returned a value for the DBInstanceAutomatedBackupsReplications
* 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 hasDbInstanceAutomatedBackupsReplications() {
return dbInstanceAutomatedBackupsReplications != null
&& !(dbInstanceAutomatedBackupsReplications instanceof SdkAutoConstructList);
}
/**
*
* The list of replicated automated backups associated with 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 #hasDbInstanceAutomatedBackupsReplications}
* method.
*
*
* @return The list of replicated automated backups associated with the DB instance.
*/
public final List dbInstanceAutomatedBackupsReplications() {
return dbInstanceAutomatedBackupsReplications;
}
/**
*
* Indicates whether a customer-owned IP address (CoIP) is enabled 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 Indicates whether a customer-owned IP address (CoIP) is enabled 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 customerOwnedIpEnabled() {
return customerOwnedIpEnabled;
}
/**
*
* The Amazon Resource Name (ARN) of the recovery point in Amazon Web Services Backup.
*
*
* @return The Amazon Resource Name (ARN) of the recovery point in Amazon Web Services Backup.
*/
public final String awsBackupRecoveryPointArn() {
return awsBackupRecoveryPointArn;
}
/**
*
* The status of the database activity stream.
*
*
* If the service returns an enum value that is not available in the current SDK version,
* {@link #activityStreamStatus} will return {@link ActivityStreamStatus#UNKNOWN_TO_SDK_VERSION}. The raw value
* returned by the service is available from {@link #activityStreamStatusAsString}.
*
*
* @return The status of the database activity stream.
* @see ActivityStreamStatus
*/
public final ActivityStreamStatus activityStreamStatus() {
return ActivityStreamStatus.fromValue(activityStreamStatus);
}
/**
*
* The status of the database activity stream.
*
*
* If the service returns an enum value that is not available in the current SDK version,
* {@link #activityStreamStatus} will return {@link ActivityStreamStatus#UNKNOWN_TO_SDK_VERSION}. The raw value
* returned by the service is available from {@link #activityStreamStatusAsString}.
*
*
* @return The status of the database activity stream.
* @see ActivityStreamStatus
*/
public final String activityStreamStatusAsString() {
return activityStreamStatus;
}
/**
*
* The Amazon Web Services KMS key identifier used for encrypting messages in the database activity stream. The
* Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.
*
*
* @return The Amazon Web Services KMS key identifier used for encrypting messages in the database activity stream.
* The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS
* key.
*/
public final String activityStreamKmsKeyId() {
return activityStreamKmsKeyId;
}
/**
*
* The name of the Amazon Kinesis data stream used for the database activity stream.
*
*
* @return The name of the Amazon Kinesis data stream used for the database activity stream.
*/
public final String activityStreamKinesisStreamName() {
return activityStreamKinesisStreamName;
}
/**
*
* The mode of the database activity stream. Database events such as a change or access generate an activity stream
* event. RDS for Oracle always handles these events asynchronously.
*
*
* If the service returns an enum value that is not available in the current SDK version,
* {@link #activityStreamMode} will return {@link ActivityStreamMode#UNKNOWN_TO_SDK_VERSION}. The raw value returned
* by the service is available from {@link #activityStreamModeAsString}.
*
*
* @return The mode of the database activity stream. Database events such as a change or access generate an activity
* stream event. RDS for Oracle always handles these events asynchronously.
* @see ActivityStreamMode
*/
public final ActivityStreamMode activityStreamMode() {
return ActivityStreamMode.fromValue(activityStreamMode);
}
/**
*
* The mode of the database activity stream. Database events such as a change or access generate an activity stream
* event. RDS for Oracle always handles these events asynchronously.
*
*
* If the service returns an enum value that is not available in the current SDK version,
* {@link #activityStreamMode} will return {@link ActivityStreamMode#UNKNOWN_TO_SDK_VERSION}. The raw value returned
* by the service is available from {@link #activityStreamModeAsString}.
*
*
* @return The mode of the database activity stream. Database events such as a change or access generate an activity
* stream event. RDS for Oracle always handles these events asynchronously.
* @see ActivityStreamMode
*/
public final String activityStreamModeAsString() {
return activityStreamMode;
}
/**
*
* Indicates whether engine-native audit fields are included in the database activity stream.
*
*
* @return Indicates whether engine-native audit fields are included in the database activity stream.
*/
public final Boolean activityStreamEngineNativeAuditFieldsIncluded() {
return activityStreamEngineNativeAuditFieldsIncluded;
}
/**
*
* The automation mode of the RDS Custom DB instance: full
or all paused
. If
* full
, the DB instance automates monitoring and instance recovery. If all paused
, the
* instance pauses automation for the duration set by --resume-full-automation-mode-minutes
.
*
*
* If the service returns an enum value that is not available in the current SDK version, {@link #automationMode}
* will return {@link AutomationMode#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available
* from {@link #automationModeAsString}.
*
*
* @return The automation mode of the RDS Custom DB instance: full
or all paused
. If
* full
, the DB instance automates monitoring and instance recovery. If all paused
* , the instance pauses automation for the duration set by
* --resume-full-automation-mode-minutes
.
* @see AutomationMode
*/
public final AutomationMode automationMode() {
return AutomationMode.fromValue(automationMode);
}
/**
*
* The automation mode of the RDS Custom DB instance: full
or all paused
. If
* full
, the DB instance automates monitoring and instance recovery. If all paused
, the
* instance pauses automation for the duration set by --resume-full-automation-mode-minutes
.
*
*
* If the service returns an enum value that is not available in the current SDK version, {@link #automationMode}
* will return {@link AutomationMode#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available
* from {@link #automationModeAsString}.
*
*
* @return The automation mode of the RDS Custom DB instance: full
or all paused
. If
* full
, the DB instance automates monitoring and instance recovery. If all paused
* , the instance pauses automation for the duration set by
* --resume-full-automation-mode-minutes
.
* @see AutomationMode
*/
public final String automationModeAsString() {
return automationMode;
}
/**
*
* The number of minutes to pause the automation. When the time period ends, RDS Custom resumes full automation. The
* minimum value is 60 (default). The maximum value is 1,440.
*
*
* @return The number of minutes to pause the automation. When the time period ends, RDS Custom resumes full
* automation. The minimum value is 60 (default). The maximum value is 1,440.
*/
public final Instant resumeFullAutomationModeTime() {
return resumeFullAutomationModeTime;
}
/**
*
* The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The
* instance profile must meet the following requirements:
*
*
* -
*
* 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. The
* instance profile must meet the following requirements:
*
* -
*
* 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 where automated backups and manual snapshots are stored: Amazon Web Services Outposts or the Amazon
* Web Services Region.
*
*
* @return The location where automated backups and manual snapshots are stored: Amazon Web Services Outposts or the
* Amazon Web Services Region.
*/
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 and
* Working with a DB instance in a VPC in the Amazon Aurora 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 and Working with a DB instance in a VPC in the Amazon Aurora User Guide.
*
*
* Valid Values: IPV4 | DUAL
*/
public final String networkType() {
return networkType;
}
/**
*
* The status of the policy state of the activity stream.
*
*
* If the service returns an enum value that is not available in the current SDK version,
* {@link #activityStreamPolicyStatus} will return {@link ActivityStreamPolicyStatus#UNKNOWN_TO_SDK_VERSION}. The
* raw value returned by the service is available from {@link #activityStreamPolicyStatusAsString}.
*
*
* @return The status of the policy state of the activity stream.
* @see ActivityStreamPolicyStatus
*/
public final ActivityStreamPolicyStatus activityStreamPolicyStatus() {
return ActivityStreamPolicyStatus.fromValue(activityStreamPolicyStatus);
}
/**
*
* The status of the policy state of the activity stream.
*
*
* If the service returns an enum value that is not available in the current SDK version,
* {@link #activityStreamPolicyStatus} will return {@link ActivityStreamPolicyStatus#UNKNOWN_TO_SDK_VERSION}. The
* raw value returned by the service is available from {@link #activityStreamPolicyStatusAsString}.
*
*
* @return The status of the policy state of the activity stream.
* @see ActivityStreamPolicyStatus
*/
public final String activityStreamPolicyStatusAsString() {
return activityStreamPolicyStatus;
}
/**
*
* The storage throughput for the DB instance.
*
*
* This setting applies only to the gp3
storage type.
*
*
* @return The storage throughput for the DB instance.
*
* This setting applies only to the gp3
storage type.
*/
public final Integer storageThroughput() {
return storageThroughput;
}
/**
*
* The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle SID is also the name of the CDB.
* This setting is only valid for RDS Custom DB instances.
*
*
* @return The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle SID is also the name of the
* CDB. This setting is only valid for RDS Custom DB instances.
*/
public final String dbSystemId() {
return dbSystemId;
}
/**
*
* The secret managed by RDS in Amazon Web Services Secrets Manager for the master user password.
*
*
* For more information, see Password management with
* Amazon Web Services Secrets Manager in the Amazon RDS User Guide.
*
*
* @return The secret managed by RDS in Amazon Web Services Secrets Manager for the master user password.
*
* For more information, see Password
* management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide.
*/
public final MasterUserSecret masterUserSecret() {
return masterUserSecret;
}
/**
*
* The details of the DB instance's server certificate.
*
*
* @return The details of the DB instance's server certificate.
*/
public final CertificateDetails certificateDetails() {
return certificateDetails;
}
/**
*
* The identifier of the source DB cluster if this DB instance is a read replica.
*
*
* @return The identifier of the source DB cluster if this DB instance is a read replica.
*/
public final String readReplicaSourceDBClusterIdentifier() {
return readReplicaSourceDBClusterIdentifier;
}
/**
*
* The progress of the storage optimization operation as a percentage.
*
*
* @return The progress of the storage optimization operation as a percentage.
*/
public final String percentProgress() {
return percentProgress;
}
@Override
public Builder toBuilder() {
return new BuilderImpl(this);
}
public static Builder builder() {
return new BuilderImpl();
}
public static Class extends Builder> serializableBuilderClass() {
return BuilderImpl.class;
}
@Override
public final int hashCode() {
int hashCode = 1;
hashCode = 31 * hashCode + Objects.hashCode(dbInstanceIdentifier());
hashCode = 31 * hashCode + Objects.hashCode(dbInstanceClass());
hashCode = 31 * hashCode + Objects.hashCode(engine());
hashCode = 31 * hashCode + Objects.hashCode(dbInstanceStatus());
hashCode = 31 * hashCode + Objects.hashCode(automaticRestartTime());
hashCode = 31 * hashCode + Objects.hashCode(masterUsername());
hashCode = 31 * hashCode + Objects.hashCode(dbName());
hashCode = 31 * hashCode + Objects.hashCode(endpoint());
hashCode = 31 * hashCode + Objects.hashCode(allocatedStorage());
hashCode = 31 * hashCode + Objects.hashCode(instanceCreateTime());
hashCode = 31 * hashCode + Objects.hashCode(preferredBackupWindow());
hashCode = 31 * hashCode + Objects.hashCode(backupRetentionPeriod());
hashCode = 31 * hashCode + Objects.hashCode(hasDbSecurityGroups() ? dbSecurityGroups() : null);
hashCode = 31 * hashCode + Objects.hashCode(hasVpcSecurityGroups() ? vpcSecurityGroups() : null);
hashCode = 31 * hashCode + Objects.hashCode(hasDbParameterGroups() ? dbParameterGroups() : null);
hashCode = 31 * hashCode + Objects.hashCode(availabilityZone());
hashCode = 31 * hashCode + Objects.hashCode(dbSubnetGroup());
hashCode = 31 * hashCode + Objects.hashCode(preferredMaintenanceWindow());
hashCode = 31 * hashCode + Objects.hashCode(pendingModifiedValues());
hashCode = 31 * hashCode + Objects.hashCode(latestRestorableTime());
hashCode = 31 * hashCode + Objects.hashCode(multiAZ());
hashCode = 31 * hashCode + Objects.hashCode(engineVersion());
hashCode = 31 * hashCode + Objects.hashCode(autoMinorVersionUpgrade());
hashCode = 31 * hashCode + Objects.hashCode(readReplicaSourceDBInstanceIdentifier());
hashCode = 31 * hashCode
+ Objects.hashCode(hasReadReplicaDBInstanceIdentifiers() ? readReplicaDBInstanceIdentifiers() : null);
hashCode = 31 * hashCode
+ Objects.hashCode(hasReadReplicaDBClusterIdentifiers() ? readReplicaDBClusterIdentifiers() : null);
hashCode = 31 * hashCode + Objects.hashCode(replicaModeAsString());
hashCode = 31 * hashCode + Objects.hashCode(licenseModel());
hashCode = 31 * hashCode + Objects.hashCode(iops());
hashCode = 31 * hashCode + Objects.hashCode(hasOptionGroupMemberships() ? optionGroupMemberships() : null);
hashCode = 31 * hashCode + Objects.hashCode(characterSetName());
hashCode = 31 * hashCode + Objects.hashCode(ncharCharacterSetName());
hashCode = 31 * hashCode + Objects.hashCode(secondaryAvailabilityZone());
hashCode = 31 * hashCode + Objects.hashCode(publiclyAccessible());
hashCode = 31 * hashCode + Objects.hashCode(hasStatusInfos() ? statusInfos() : null);
hashCode = 31 * hashCode + Objects.hashCode(storageType());
hashCode = 31 * hashCode + Objects.hashCode(tdeCredentialArn());
hashCode = 31 * hashCode + Objects.hashCode(dbInstancePort());
hashCode = 31 * hashCode + Objects.hashCode(dbClusterIdentifier());
hashCode = 31 * hashCode + Objects.hashCode(storageEncrypted());
hashCode = 31 * hashCode + Objects.hashCode(kmsKeyId());
hashCode = 31 * hashCode + Objects.hashCode(dbiResourceId());
hashCode = 31 * hashCode + Objects.hashCode(caCertificateIdentifier());
hashCode = 31 * hashCode + Objects.hashCode(hasDomainMemberships() ? domainMemberships() : null);
hashCode = 31 * hashCode + Objects.hashCode(copyTagsToSnapshot());
hashCode = 31 * hashCode + Objects.hashCode(monitoringInterval());
hashCode = 31 * hashCode + Objects.hashCode(enhancedMonitoringResourceArn());
hashCode = 31 * hashCode + Objects.hashCode(monitoringRoleArn());
hashCode = 31 * hashCode + Objects.hashCode(promotionTier());
hashCode = 31 * hashCode + Objects.hashCode(dbInstanceArn());
hashCode = 31 * hashCode + Objects.hashCode(timezone());
hashCode = 31 * hashCode + Objects.hashCode(iamDatabaseAuthenticationEnabled());
hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsEnabled());
hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsKMSKeyId());
hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsRetentionPeriod());
hashCode = 31 * hashCode + Objects.hashCode(hasEnabledCloudwatchLogsExports() ? enabledCloudwatchLogsExports() : null);
hashCode = 31 * hashCode + Objects.hashCode(hasProcessorFeatures() ? processorFeatures() : null);
hashCode = 31 * hashCode + Objects.hashCode(deletionProtection());
hashCode = 31 * hashCode + Objects.hashCode(hasAssociatedRoles() ? associatedRoles() : null);
hashCode = 31 * hashCode + Objects.hashCode(listenerEndpoint());
hashCode = 31 * hashCode + Objects.hashCode(maxAllocatedStorage());
hashCode = 31 * hashCode + Objects.hashCode(hasTagList() ? tagList() : null);
hashCode = 31 * hashCode
+ Objects.hashCode(hasDbInstanceAutomatedBackupsReplications() ? dbInstanceAutomatedBackupsReplications() : null);
hashCode = 31 * hashCode + Objects.hashCode(customerOwnedIpEnabled());
hashCode = 31 * hashCode + Objects.hashCode(awsBackupRecoveryPointArn());
hashCode = 31 * hashCode + Objects.hashCode(activityStreamStatusAsString());
hashCode = 31 * hashCode + Objects.hashCode(activityStreamKmsKeyId());
hashCode = 31 * hashCode + Objects.hashCode(activityStreamKinesisStreamName());
hashCode = 31 * hashCode + Objects.hashCode(activityStreamModeAsString());
hashCode = 31 * hashCode + Objects.hashCode(activityStreamEngineNativeAuditFieldsIncluded());
hashCode = 31 * hashCode + Objects.hashCode(automationModeAsString());
hashCode = 31 * hashCode + Objects.hashCode(resumeFullAutomationModeTime());
hashCode = 31 * hashCode + Objects.hashCode(customIamInstanceProfile());
hashCode = 31 * hashCode + Objects.hashCode(backupTarget());
hashCode = 31 * hashCode + Objects.hashCode(networkType());
hashCode = 31 * hashCode + Objects.hashCode(activityStreamPolicyStatusAsString());
hashCode = 31 * hashCode + Objects.hashCode(storageThroughput());
hashCode = 31 * hashCode + Objects.hashCode(dbSystemId());
hashCode = 31 * hashCode + Objects.hashCode(masterUserSecret());
hashCode = 31 * hashCode + Objects.hashCode(certificateDetails());
hashCode = 31 * hashCode + Objects.hashCode(readReplicaSourceDBClusterIdentifier());
hashCode = 31 * hashCode + Objects.hashCode(percentProgress());
return hashCode;
}
@Override
public final boolean equals(Object obj) {
return equalsBySdkFields(obj);
}
@Override
public final boolean equalsBySdkFields(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (!(obj instanceof DBInstance)) {
return false;
}
DBInstance other = (DBInstance) obj;
return Objects.equals(dbInstanceIdentifier(), other.dbInstanceIdentifier())
&& Objects.equals(dbInstanceClass(), other.dbInstanceClass())
&& Objects.equals(engine(), other.engine())
&& Objects.equals(dbInstanceStatus(), other.dbInstanceStatus())
&& Objects.equals(automaticRestartTime(), other.automaticRestartTime())
&& Objects.equals(masterUsername(), other.masterUsername())
&& Objects.equals(dbName(), other.dbName())
&& Objects.equals(endpoint(), other.endpoint())
&& Objects.equals(allocatedStorage(), other.allocatedStorage())
&& Objects.equals(instanceCreateTime(), other.instanceCreateTime())
&& Objects.equals(preferredBackupWindow(), other.preferredBackupWindow())
&& Objects.equals(backupRetentionPeriod(), other.backupRetentionPeriod())
&& hasDbSecurityGroups() == other.hasDbSecurityGroups()
&& Objects.equals(dbSecurityGroups(), other.dbSecurityGroups())
&& hasVpcSecurityGroups() == other.hasVpcSecurityGroups()
&& Objects.equals(vpcSecurityGroups(), other.vpcSecurityGroups())
&& hasDbParameterGroups() == other.hasDbParameterGroups()
&& Objects.equals(dbParameterGroups(), other.dbParameterGroups())
&& Objects.equals(availabilityZone(), other.availabilityZone())
&& Objects.equals(dbSubnetGroup(), other.dbSubnetGroup())
&& Objects.equals(preferredMaintenanceWindow(), other.preferredMaintenanceWindow())
&& Objects.equals(pendingModifiedValues(), other.pendingModifiedValues())
&& Objects.equals(latestRestorableTime(), other.latestRestorableTime())
&& Objects.equals(multiAZ(), other.multiAZ())
&& Objects.equals(engineVersion(), other.engineVersion())
&& Objects.equals(autoMinorVersionUpgrade(), other.autoMinorVersionUpgrade())
&& Objects.equals(readReplicaSourceDBInstanceIdentifier(), other.readReplicaSourceDBInstanceIdentifier())
&& hasReadReplicaDBInstanceIdentifiers() == other.hasReadReplicaDBInstanceIdentifiers()
&& Objects.equals(readReplicaDBInstanceIdentifiers(), other.readReplicaDBInstanceIdentifiers())
&& hasReadReplicaDBClusterIdentifiers() == other.hasReadReplicaDBClusterIdentifiers()
&& Objects.equals(readReplicaDBClusterIdentifiers(), other.readReplicaDBClusterIdentifiers())
&& Objects.equals(replicaModeAsString(), other.replicaModeAsString())
&& Objects.equals(licenseModel(), other.licenseModel())
&& Objects.equals(iops(), other.iops())
&& hasOptionGroupMemberships() == other.hasOptionGroupMemberships()
&& Objects.equals(optionGroupMemberships(), other.optionGroupMemberships())
&& Objects.equals(characterSetName(), other.characterSetName())
&& Objects.equals(ncharCharacterSetName(), other.ncharCharacterSetName())
&& Objects.equals(secondaryAvailabilityZone(), other.secondaryAvailabilityZone())
&& Objects.equals(publiclyAccessible(), other.publiclyAccessible())
&& hasStatusInfos() == other.hasStatusInfos()
&& Objects.equals(statusInfos(), other.statusInfos())
&& Objects.equals(storageType(), other.storageType())
&& Objects.equals(tdeCredentialArn(), other.tdeCredentialArn())
&& Objects.equals(dbInstancePort(), other.dbInstancePort())
&& Objects.equals(dbClusterIdentifier(), other.dbClusterIdentifier())
&& Objects.equals(storageEncrypted(), other.storageEncrypted())
&& Objects.equals(kmsKeyId(), other.kmsKeyId())
&& Objects.equals(dbiResourceId(), other.dbiResourceId())
&& Objects.equals(caCertificateIdentifier(), other.caCertificateIdentifier())
&& hasDomainMemberships() == other.hasDomainMemberships()
&& Objects.equals(domainMemberships(), other.domainMemberships())
&& Objects.equals(copyTagsToSnapshot(), other.copyTagsToSnapshot())
&& Objects.equals(monitoringInterval(), other.monitoringInterval())
&& Objects.equals(enhancedMonitoringResourceArn(), other.enhancedMonitoringResourceArn())
&& Objects.equals(monitoringRoleArn(), other.monitoringRoleArn())
&& Objects.equals(promotionTier(), other.promotionTier())
&& Objects.equals(dbInstanceArn(), other.dbInstanceArn())
&& Objects.equals(timezone(), other.timezone())
&& Objects.equals(iamDatabaseAuthenticationEnabled(), other.iamDatabaseAuthenticationEnabled())
&& Objects.equals(performanceInsightsEnabled(), other.performanceInsightsEnabled())
&& Objects.equals(performanceInsightsKMSKeyId(), other.performanceInsightsKMSKeyId())
&& Objects.equals(performanceInsightsRetentionPeriod(), other.performanceInsightsRetentionPeriod())
&& hasEnabledCloudwatchLogsExports() == other.hasEnabledCloudwatchLogsExports()
&& Objects.equals(enabledCloudwatchLogsExports(), other.enabledCloudwatchLogsExports())
&& hasProcessorFeatures() == other.hasProcessorFeatures()
&& Objects.equals(processorFeatures(), other.processorFeatures())
&& Objects.equals(deletionProtection(), other.deletionProtection())
&& hasAssociatedRoles() == other.hasAssociatedRoles()
&& Objects.equals(associatedRoles(), other.associatedRoles())
&& Objects.equals(listenerEndpoint(), other.listenerEndpoint())
&& Objects.equals(maxAllocatedStorage(), other.maxAllocatedStorage())
&& hasTagList() == other.hasTagList()
&& Objects.equals(tagList(), other.tagList())
&& hasDbInstanceAutomatedBackupsReplications() == other.hasDbInstanceAutomatedBackupsReplications()
&& Objects.equals(dbInstanceAutomatedBackupsReplications(), other.dbInstanceAutomatedBackupsReplications())
&& Objects.equals(customerOwnedIpEnabled(), other.customerOwnedIpEnabled())
&& Objects.equals(awsBackupRecoveryPointArn(), other.awsBackupRecoveryPointArn())
&& Objects.equals(activityStreamStatusAsString(), other.activityStreamStatusAsString())
&& Objects.equals(activityStreamKmsKeyId(), other.activityStreamKmsKeyId())
&& Objects.equals(activityStreamKinesisStreamName(), other.activityStreamKinesisStreamName())
&& Objects.equals(activityStreamModeAsString(), other.activityStreamModeAsString())
&& Objects.equals(activityStreamEngineNativeAuditFieldsIncluded(),
other.activityStreamEngineNativeAuditFieldsIncluded())
&& Objects.equals(automationModeAsString(), other.automationModeAsString())
&& Objects.equals(resumeFullAutomationModeTime(), other.resumeFullAutomationModeTime())
&& Objects.equals(customIamInstanceProfile(), other.customIamInstanceProfile())
&& Objects.equals(backupTarget(), other.backupTarget()) && Objects.equals(networkType(), other.networkType())
&& Objects.equals(activityStreamPolicyStatusAsString(), other.activityStreamPolicyStatusAsString())
&& Objects.equals(storageThroughput(), other.storageThroughput())
&& Objects.equals(dbSystemId(), other.dbSystemId())
&& Objects.equals(masterUserSecret(), other.masterUserSecret())
&& Objects.equals(certificateDetails(), other.certificateDetails())
&& Objects.equals(readReplicaSourceDBClusterIdentifier(), other.readReplicaSourceDBClusterIdentifier())
&& Objects.equals(percentProgress(), other.percentProgress());
}
/**
* 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("DBInstance")
.add("DBInstanceIdentifier", dbInstanceIdentifier())
.add("DBInstanceClass", dbInstanceClass())
.add("Engine", engine())
.add("DBInstanceStatus", dbInstanceStatus())
.add("AutomaticRestartTime", automaticRestartTime())
.add("MasterUsername", masterUsername())
.add("DBName", dbName())
.add("Endpoint", endpoint())
.add("AllocatedStorage", allocatedStorage())
.add("InstanceCreateTime", instanceCreateTime())
.add("PreferredBackupWindow", preferredBackupWindow())
.add("BackupRetentionPeriod", backupRetentionPeriod())
.add("DBSecurityGroups", hasDbSecurityGroups() ? dbSecurityGroups() : null)
.add("VpcSecurityGroups", hasVpcSecurityGroups() ? vpcSecurityGroups() : null)
.add("DBParameterGroups", hasDbParameterGroups() ? dbParameterGroups() : null)
.add("AvailabilityZone", availabilityZone())
.add("DBSubnetGroup", dbSubnetGroup())
.add("PreferredMaintenanceWindow", preferredMaintenanceWindow())
.add("PendingModifiedValues", pendingModifiedValues())
.add("LatestRestorableTime", latestRestorableTime())
.add("MultiAZ", multiAZ())
.add("EngineVersion", engineVersion())
.add("AutoMinorVersionUpgrade", autoMinorVersionUpgrade())
.add("ReadReplicaSourceDBInstanceIdentifier", readReplicaSourceDBInstanceIdentifier())
.add("ReadReplicaDBInstanceIdentifiers",
hasReadReplicaDBInstanceIdentifiers() ? readReplicaDBInstanceIdentifiers() : null)
.add("ReadReplicaDBClusterIdentifiers",
hasReadReplicaDBClusterIdentifiers() ? readReplicaDBClusterIdentifiers() : null)
.add("ReplicaMode", replicaModeAsString())
.add("LicenseModel", licenseModel())
.add("Iops", iops())
.add("OptionGroupMemberships", hasOptionGroupMemberships() ? optionGroupMemberships() : null)
.add("CharacterSetName", characterSetName())
.add("NcharCharacterSetName", ncharCharacterSetName())
.add("SecondaryAvailabilityZone", secondaryAvailabilityZone())
.add("PubliclyAccessible", publiclyAccessible())
.add("StatusInfos", hasStatusInfos() ? statusInfos() : null)
.add("StorageType", storageType())
.add("TdeCredentialArn", tdeCredentialArn())
.add("DbInstancePort", dbInstancePort())
.add("DBClusterIdentifier", dbClusterIdentifier())
.add("StorageEncrypted", storageEncrypted())
.add("KmsKeyId", kmsKeyId())
.add("DbiResourceId", dbiResourceId())
.add("CACertificateIdentifier", caCertificateIdentifier())
.add("DomainMemberships", hasDomainMemberships() ? domainMemberships() : null)
.add("CopyTagsToSnapshot", copyTagsToSnapshot())
.add("MonitoringInterval", monitoringInterval())
.add("EnhancedMonitoringResourceArn", enhancedMonitoringResourceArn())
.add("MonitoringRoleArn", monitoringRoleArn())
.add("PromotionTier", promotionTier())
.add("DBInstanceArn", dbInstanceArn())
.add("Timezone", timezone())
.add("IAMDatabaseAuthenticationEnabled", iamDatabaseAuthenticationEnabled())
.add("PerformanceInsightsEnabled", performanceInsightsEnabled())
.add("PerformanceInsightsKMSKeyId", performanceInsightsKMSKeyId())
.add("PerformanceInsightsRetentionPeriod", performanceInsightsRetentionPeriod())
.add("EnabledCloudwatchLogsExports", hasEnabledCloudwatchLogsExports() ? enabledCloudwatchLogsExports() : null)
.add("ProcessorFeatures", hasProcessorFeatures() ? processorFeatures() : null)
.add("DeletionProtection", deletionProtection())
.add("AssociatedRoles", hasAssociatedRoles() ? associatedRoles() : null)
.add("ListenerEndpoint", listenerEndpoint())
.add("MaxAllocatedStorage", maxAllocatedStorage())
.add("TagList", hasTagList() ? tagList() : null)
.add("DBInstanceAutomatedBackupsReplications",
hasDbInstanceAutomatedBackupsReplications() ? dbInstanceAutomatedBackupsReplications() : null)
.add("CustomerOwnedIpEnabled", customerOwnedIpEnabled())
.add("AwsBackupRecoveryPointArn", awsBackupRecoveryPointArn())
.add("ActivityStreamStatus", activityStreamStatusAsString())
.add("ActivityStreamKmsKeyId", activityStreamKmsKeyId())
.add("ActivityStreamKinesisStreamName", activityStreamKinesisStreamName())
.add("ActivityStreamMode", activityStreamModeAsString())
.add("ActivityStreamEngineNativeAuditFieldsIncluded", activityStreamEngineNativeAuditFieldsIncluded())
.add("AutomationMode", automationModeAsString())
.add("ResumeFullAutomationModeTime", resumeFullAutomationModeTime())
.add("CustomIamInstanceProfile", customIamInstanceProfile()).add("BackupTarget", backupTarget())
.add("NetworkType", networkType()).add("ActivityStreamPolicyStatus", activityStreamPolicyStatusAsString())
.add("StorageThroughput", storageThroughput()).add("DBSystemId", dbSystemId())
.add("MasterUserSecret", masterUserSecret()).add("CertificateDetails", certificateDetails())
.add("ReadReplicaSourceDBClusterIdentifier", readReplicaSourceDBClusterIdentifier())
.add("PercentProgress", percentProgress()).build();
}
public final Optional getValueForField(String fieldName, Class clazz) {
switch (fieldName) {
case "DBInstanceIdentifier":
return Optional.ofNullable(clazz.cast(dbInstanceIdentifier()));
case "DBInstanceClass":
return Optional.ofNullable(clazz.cast(dbInstanceClass()));
case "Engine":
return Optional.ofNullable(clazz.cast(engine()));
case "DBInstanceStatus":
return Optional.ofNullable(clazz.cast(dbInstanceStatus()));
case "AutomaticRestartTime":
return Optional.ofNullable(clazz.cast(automaticRestartTime()));
case "MasterUsername":
return Optional.ofNullable(clazz.cast(masterUsername()));
case "DBName":
return Optional.ofNullable(clazz.cast(dbName()));
case "Endpoint":
return Optional.ofNullable(clazz.cast(endpoint()));
case "AllocatedStorage":
return Optional.ofNullable(clazz.cast(allocatedStorage()));
case "InstanceCreateTime":
return Optional.ofNullable(clazz.cast(instanceCreateTime()));
case "PreferredBackupWindow":
return Optional.ofNullable(clazz.cast(preferredBackupWindow()));
case "BackupRetentionPeriod":
return Optional.ofNullable(clazz.cast(backupRetentionPeriod()));
case "DBSecurityGroups":
return Optional.ofNullable(clazz.cast(dbSecurityGroups()));
case "VpcSecurityGroups":
return Optional.ofNullable(clazz.cast(vpcSecurityGroups()));
case "DBParameterGroups":
return Optional.ofNullable(clazz.cast(dbParameterGroups()));
case "AvailabilityZone":
return Optional.ofNullable(clazz.cast(availabilityZone()));
case "DBSubnetGroup":
return Optional.ofNullable(clazz.cast(dbSubnetGroup()));
case "PreferredMaintenanceWindow":
return Optional.ofNullable(clazz.cast(preferredMaintenanceWindow()));
case "PendingModifiedValues":
return Optional.ofNullable(clazz.cast(pendingModifiedValues()));
case "LatestRestorableTime":
return Optional.ofNullable(clazz.cast(latestRestorableTime()));
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 "ReadReplicaSourceDBInstanceIdentifier":
return Optional.ofNullable(clazz.cast(readReplicaSourceDBInstanceIdentifier()));
case "ReadReplicaDBInstanceIdentifiers":
return Optional.ofNullable(clazz.cast(readReplicaDBInstanceIdentifiers()));
case "ReadReplicaDBClusterIdentifiers":
return Optional.ofNullable(clazz.cast(readReplicaDBClusterIdentifiers()));
case "ReplicaMode":
return Optional.ofNullable(clazz.cast(replicaModeAsString()));
case "LicenseModel":
return Optional.ofNullable(clazz.cast(licenseModel()));
case "Iops":
return Optional.ofNullable(clazz.cast(iops()));
case "OptionGroupMemberships":
return Optional.ofNullable(clazz.cast(optionGroupMemberships()));
case "CharacterSetName":
return Optional.ofNullable(clazz.cast(characterSetName()));
case "NcharCharacterSetName":
return Optional.ofNullable(clazz.cast(ncharCharacterSetName()));
case "SecondaryAvailabilityZone":
return Optional.ofNullable(clazz.cast(secondaryAvailabilityZone()));
case "PubliclyAccessible":
return Optional.ofNullable(clazz.cast(publiclyAccessible()));
case "StatusInfos":
return Optional.ofNullable(clazz.cast(statusInfos()));
case "StorageType":
return Optional.ofNullable(clazz.cast(storageType()));
case "TdeCredentialArn":
return Optional.ofNullable(clazz.cast(tdeCredentialArn()));
case "DbInstancePort":
return Optional.ofNullable(clazz.cast(dbInstancePort()));
case "DBClusterIdentifier":
return Optional.ofNullable(clazz.cast(dbClusterIdentifier()));
case "StorageEncrypted":
return Optional.ofNullable(clazz.cast(storageEncrypted()));
case "KmsKeyId":
return Optional.ofNullable(clazz.cast(kmsKeyId()));
case "DbiResourceId":
return Optional.ofNullable(clazz.cast(dbiResourceId()));
case "CACertificateIdentifier":
return Optional.ofNullable(clazz.cast(caCertificateIdentifier()));
case "DomainMemberships":
return Optional.ofNullable(clazz.cast(domainMemberships()));
case "CopyTagsToSnapshot":
return Optional.ofNullable(clazz.cast(copyTagsToSnapshot()));
case "MonitoringInterval":
return Optional.ofNullable(clazz.cast(monitoringInterval()));
case "EnhancedMonitoringResourceArn":
return Optional.ofNullable(clazz.cast(enhancedMonitoringResourceArn()));
case "MonitoringRoleArn":
return Optional.ofNullable(clazz.cast(monitoringRoleArn()));
case "PromotionTier":
return Optional.ofNullable(clazz.cast(promotionTier()));
case "DBInstanceArn":
return Optional.ofNullable(clazz.cast(dbInstanceArn()));
case "Timezone":
return Optional.ofNullable(clazz.cast(timezone()));
case "IAMDatabaseAuthenticationEnabled":
return Optional.ofNullable(clazz.cast(iamDatabaseAuthenticationEnabled()));
case "PerformanceInsightsEnabled":
return Optional.ofNullable(clazz.cast(performanceInsightsEnabled()));
case "PerformanceInsightsKMSKeyId":
return Optional.ofNullable(clazz.cast(performanceInsightsKMSKeyId()));
case "PerformanceInsightsRetentionPeriod":
return Optional.ofNullable(clazz.cast(performanceInsightsRetentionPeriod()));
case "EnabledCloudwatchLogsExports":
return Optional.ofNullable(clazz.cast(enabledCloudwatchLogsExports()));
case "ProcessorFeatures":
return Optional.ofNullable(clazz.cast(processorFeatures()));
case "DeletionProtection":
return Optional.ofNullable(clazz.cast(deletionProtection()));
case "AssociatedRoles":
return Optional.ofNullable(clazz.cast(associatedRoles()));
case "ListenerEndpoint":
return Optional.ofNullable(clazz.cast(listenerEndpoint()));
case "MaxAllocatedStorage":
return Optional.ofNullable(clazz.cast(maxAllocatedStorage()));
case "TagList":
return Optional.ofNullable(clazz.cast(tagList()));
case "DBInstanceAutomatedBackupsReplications":
return Optional.ofNullable(clazz.cast(dbInstanceAutomatedBackupsReplications()));
case "CustomerOwnedIpEnabled":
return Optional.ofNullable(clazz.cast(customerOwnedIpEnabled()));
case "AwsBackupRecoveryPointArn":
return Optional.ofNullable(clazz.cast(awsBackupRecoveryPointArn()));
case "ActivityStreamStatus":
return Optional.ofNullable(clazz.cast(activityStreamStatusAsString()));
case "ActivityStreamKmsKeyId":
return Optional.ofNullable(clazz.cast(activityStreamKmsKeyId()));
case "ActivityStreamKinesisStreamName":
return Optional.ofNullable(clazz.cast(activityStreamKinesisStreamName()));
case "ActivityStreamMode":
return Optional.ofNullable(clazz.cast(activityStreamModeAsString()));
case "ActivityStreamEngineNativeAuditFieldsIncluded":
return Optional.ofNullable(clazz.cast(activityStreamEngineNativeAuditFieldsIncluded()));
case "AutomationMode":
return Optional.ofNullable(clazz.cast(automationModeAsString()));
case "ResumeFullAutomationModeTime":
return Optional.ofNullable(clazz.cast(resumeFullAutomationModeTime()));
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 "ActivityStreamPolicyStatus":
return Optional.ofNullable(clazz.cast(activityStreamPolicyStatusAsString()));
case "StorageThroughput":
return Optional.ofNullable(clazz.cast(storageThroughput()));
case "DBSystemId":
return Optional.ofNullable(clazz.cast(dbSystemId()));
case "MasterUserSecret":
return Optional.ofNullable(clazz.cast(masterUserSecret()));
case "CertificateDetails":
return Optional.ofNullable(clazz.cast(certificateDetails()));
case "ReadReplicaSourceDBClusterIdentifier":
return Optional.ofNullable(clazz.cast(readReplicaSourceDBClusterIdentifier()));
case "PercentProgress":
return Optional.ofNullable(clazz.cast(percentProgress()));
default:
return Optional.empty();
}
}
@Override
public final List> sdkFields() {
return SDK_FIELDS;
}
private static Function