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

software.amazon.awssdk.services.rds.model.DBCluster 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 Aurora DB cluster or Multi-AZ DB cluster. *

*

* For an Amazon Aurora DB cluster, this data type is used as a response element in the operations * CreateDBCluster, DeleteDBCluster, DescribeDBClusters, * FailoverDBCluster, ModifyDBCluster, PromoteReadReplicaDBCluster, * RestoreDBClusterFromS3, RestoreDBClusterFromSnapshot, * RestoreDBClusterToPointInTime, StartDBCluster, and StopDBCluster. *

*

* For a Multi-AZ DB cluster, this data type is used as a response element in the operations * CreateDBCluster, DeleteDBCluster, DescribeDBClusters, * FailoverDBCluster, ModifyDBCluster, RebootDBCluster, * RestoreDBClusterFromSnapshot, and RestoreDBClusterToPointInTime. *

*

* For more information on Amazon Aurora DB clusters, see What is Amazon * Aurora? in the Amazon Aurora User Guide. *

*

* For more information on Multi-AZ DB clusters, see Multi-AZ * deployments with two readable standby DB instances in the Amazon RDS User Guide. *

*/ @Generated("software.amazon.awssdk:codegen") public final class DBCluster implements SdkPojo, Serializable, ToCopyableBuilder { private static final SdkField ALLOCATED_STORAGE_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("AllocatedStorage").getter(getter(DBCluster::allocatedStorage)).setter(setter(Builder::allocatedStorage)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AllocatedStorage").build()).build(); private static final SdkField> AVAILABILITY_ZONES_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("AvailabilityZones") .getter(getter(DBCluster::availabilityZones)) .setter(setter(Builder::availabilityZones)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AvailabilityZones").build(), ListTrait .builder() .memberLocationName("AvailabilityZone") .memberFieldInfo( SdkField. builder(MarshallingType.STRING) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("AvailabilityZone").build()).build()).build()).build(); private static final SdkField BACKUP_RETENTION_PERIOD_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("BackupRetentionPeriod").getter(getter(DBCluster::backupRetentionPeriod)) .setter(setter(Builder::backupRetentionPeriod)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("BackupRetentionPeriod").build()) .build(); private static final SdkField CHARACTER_SET_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("CharacterSetName").getter(getter(DBCluster::characterSetName)).setter(setter(Builder::characterSetName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CharacterSetName").build()).build(); private static final SdkField DATABASE_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DatabaseName").getter(getter(DBCluster::databaseName)).setter(setter(Builder::databaseName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DatabaseName").build()).build(); private static final SdkField DB_CLUSTER_IDENTIFIER_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBClusterIdentifier").getter(getter(DBCluster::dbClusterIdentifier)) .setter(setter(Builder::dbClusterIdentifier)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterIdentifier").build()) .build(); private static final SdkField DB_CLUSTER_PARAMETER_GROUP_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBClusterParameterGroup").getter(getter(DBCluster::dbClusterParameterGroup)) .setter(setter(Builder::dbClusterParameterGroup)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterParameterGroup").build()) .build(); private static final SdkField DB_SUBNET_GROUP_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBSubnetGroup").getter(getter(DBCluster::dbSubnetGroup)).setter(setter(Builder::dbSubnetGroup)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBSubnetGroup").build()).build(); private static final SdkField STATUS_FIELD = SdkField. builder(MarshallingType.STRING).memberName("Status") .getter(getter(DBCluster::status)).setter(setter(Builder::status)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Status").build()).build(); private static final SdkField AUTOMATIC_RESTART_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT) .memberName("AutomaticRestartTime").getter(getter(DBCluster::automaticRestartTime)) .setter(setter(Builder::automaticRestartTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AutomaticRestartTime").build()) .build(); private static final SdkField PERCENT_PROGRESS_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("PercentProgress").getter(getter(DBCluster::percentProgress)).setter(setter(Builder::percentProgress)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PercentProgress").build()).build(); private static final SdkField EARLIEST_RESTORABLE_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT) .memberName("EarliestRestorableTime").getter(getter(DBCluster::earliestRestorableTime)) .setter(setter(Builder::earliestRestorableTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EarliestRestorableTime").build()) .build(); private static final SdkField ENDPOINT_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("Endpoint").getter(getter(DBCluster::endpoint)).setter(setter(Builder::endpoint)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Endpoint").build()).build(); private static final SdkField READER_ENDPOINT_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("ReaderEndpoint").getter(getter(DBCluster::readerEndpoint)).setter(setter(Builder::readerEndpoint)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ReaderEndpoint").build()).build(); private static final SdkField> CUSTOM_ENDPOINTS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("CustomEndpoints") .getter(getter(DBCluster::customEndpoints)) .setter(setter(Builder::customEndpoints)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CustomEndpoints").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 MULTI_AZ_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("MultiAZ").getter(getter(DBCluster::multiAZ)).setter(setter(Builder::multiAZ)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MultiAZ").build()).build(); private static final SdkField ENGINE_FIELD = SdkField. builder(MarshallingType.STRING).memberName("Engine") .getter(getter(DBCluster::engine)).setter(setter(Builder::engine)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Engine").build()).build(); private static final SdkField ENGINE_VERSION_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("EngineVersion").getter(getter(DBCluster::engineVersion)).setter(setter(Builder::engineVersion)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EngineVersion").build()).build(); private static final SdkField LATEST_RESTORABLE_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT) .memberName("LatestRestorableTime").getter(getter(DBCluster::latestRestorableTime)) .setter(setter(Builder::latestRestorableTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("LatestRestorableTime").build()) .build(); private static final SdkField PORT_FIELD = SdkField. builder(MarshallingType.INTEGER).memberName("Port") .getter(getter(DBCluster::port)).setter(setter(Builder::port)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Port").build()).build(); private static final SdkField MASTER_USERNAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("MasterUsername").getter(getter(DBCluster::masterUsername)).setter(setter(Builder::masterUsername)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MasterUsername").build()).build(); private static final SdkField> DB_CLUSTER_OPTION_GROUP_MEMBERSHIPS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("DBClusterOptionGroupMemberships") .getter(getter(DBCluster::dbClusterOptionGroupMemberships)) .setter(setter(Builder::dbClusterOptionGroupMemberships)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterOptionGroupMemberships") .build(), ListTrait .builder() .memberLocationName("DBClusterOptionGroup") .memberFieldInfo( SdkField. builder(MarshallingType.SDK_POJO) .constructor(DBClusterOptionGroupStatus::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("DBClusterOptionGroup").build()).build()).build()).build(); private static final SdkField PREFERRED_BACKUP_WINDOW_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("PreferredBackupWindow").getter(getter(DBCluster::preferredBackupWindow)) .setter(setter(Builder::preferredBackupWindow)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PreferredBackupWindow").build()) .build(); private static final SdkField PREFERRED_MAINTENANCE_WINDOW_FIELD = SdkField . builder(MarshallingType.STRING) .memberName("PreferredMaintenanceWindow") .getter(getter(DBCluster::preferredMaintenanceWindow)) .setter(setter(Builder::preferredMaintenanceWindow)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PreferredMaintenanceWindow").build()) .build(); private static final SdkField REPLICATION_SOURCE_IDENTIFIER_FIELD = SdkField . builder(MarshallingType.STRING) .memberName("ReplicationSourceIdentifier") .getter(getter(DBCluster::replicationSourceIdentifier)) .setter(setter(Builder::replicationSourceIdentifier)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ReplicationSourceIdentifier") .build()).build(); private static final SdkField> READ_REPLICA_IDENTIFIERS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("ReadReplicaIdentifiers") .getter(getter(DBCluster::readReplicaIdentifiers)) .setter(setter(Builder::readReplicaIdentifiers)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ReadReplicaIdentifiers").build(), ListTrait .builder() .memberLocationName("ReadReplicaIdentifier") .memberFieldInfo( SdkField. builder(MarshallingType.STRING) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("ReadReplicaIdentifier").build()).build()).build()).build(); private static final SdkField> DB_CLUSTER_MEMBERS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("DBClusterMembers") .getter(getter(DBCluster::dbClusterMembers)) .setter(setter(Builder::dbClusterMembers)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterMembers").build(), ListTrait .builder() .memberLocationName("DBClusterMember") .memberFieldInfo( SdkField. builder(MarshallingType.SDK_POJO) .constructor(DBClusterMember::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("DBClusterMember").build()).build()).build()).build(); private static final SdkField> VPC_SECURITY_GROUPS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("VpcSecurityGroups") .getter(getter(DBCluster::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 HOSTED_ZONE_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("HostedZoneId").getter(getter(DBCluster::hostedZoneId)).setter(setter(Builder::hostedZoneId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("HostedZoneId").build()).build(); private static final SdkField STORAGE_ENCRYPTED_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("StorageEncrypted").getter(getter(DBCluster::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(DBCluster::kmsKeyId)).setter(setter(Builder::kmsKeyId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("KmsKeyId").build()).build(); private static final SdkField DB_CLUSTER_RESOURCE_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DbClusterResourceId").getter(getter(DBCluster::dbClusterResourceId)) .setter(setter(Builder::dbClusterResourceId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DbClusterResourceId").build()) .build(); private static final SdkField DB_CLUSTER_ARN_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBClusterArn").getter(getter(DBCluster::dbClusterArn)).setter(setter(Builder::dbClusterArn)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterArn").build()).build(); private static final SdkField> ASSOCIATED_ROLES_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("AssociatedRoles") .getter(getter(DBCluster::associatedRoles)) .setter(setter(Builder::associatedRoles)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AssociatedRoles").build(), ListTrait .builder() .memberLocationName("DBClusterRole") .memberFieldInfo( SdkField. builder(MarshallingType.SDK_POJO) .constructor(DBClusterRole::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("DBClusterRole").build()).build()).build()).build(); private static final SdkField IAM_DATABASE_AUTHENTICATION_ENABLED_FIELD = SdkField . builder(MarshallingType.BOOLEAN) .memberName("IAMDatabaseAuthenticationEnabled") .getter(getter(DBCluster::iamDatabaseAuthenticationEnabled)) .setter(setter(Builder::iamDatabaseAuthenticationEnabled)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("IAMDatabaseAuthenticationEnabled") .build()).build(); private static final SdkField CLONE_GROUP_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("CloneGroupId").getter(getter(DBCluster::cloneGroupId)).setter(setter(Builder::cloneGroupId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CloneGroupId").build()).build(); private static final SdkField CLUSTER_CREATE_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT) .memberName("ClusterCreateTime").getter(getter(DBCluster::clusterCreateTime)) .setter(setter(Builder::clusterCreateTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ClusterCreateTime").build()).build(); private static final SdkField EARLIEST_BACKTRACK_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT) .memberName("EarliestBacktrackTime").getter(getter(DBCluster::earliestBacktrackTime)) .setter(setter(Builder::earliestBacktrackTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EarliestBacktrackTime").build()) .build(); private static final SdkField BACKTRACK_WINDOW_FIELD = SdkField. builder(MarshallingType.LONG) .memberName("BacktrackWindow").getter(getter(DBCluster::backtrackWindow)).setter(setter(Builder::backtrackWindow)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("BacktrackWindow").build()).build(); private static final SdkField BACKTRACK_CONSUMED_CHANGE_RECORDS_FIELD = SdkField . builder(MarshallingType.LONG) .memberName("BacktrackConsumedChangeRecords") .getter(getter(DBCluster::backtrackConsumedChangeRecords)) .setter(setter(Builder::backtrackConsumedChangeRecords)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("BacktrackConsumedChangeRecords") .build()).build(); private static final SdkField> ENABLED_CLOUDWATCH_LOGS_EXPORTS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("EnabledCloudwatchLogsExports") .getter(getter(DBCluster::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 CAPACITY_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("Capacity").getter(getter(DBCluster::capacity)).setter(setter(Builder::capacity)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Capacity").build()).build(); private static final SdkField ENGINE_MODE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("EngineMode").getter(getter(DBCluster::engineMode)).setter(setter(Builder::engineMode)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EngineMode").build()).build(); private static final SdkField SCALING_CONFIGURATION_INFO_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("ScalingConfigurationInfo") .getter(getter(DBCluster::scalingConfigurationInfo)).setter(setter(Builder::scalingConfigurationInfo)) .constructor(ScalingConfigurationInfo::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ScalingConfigurationInfo").build()) .build(); private static final SdkField DELETION_PROTECTION_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("DeletionProtection").getter(getter(DBCluster::deletionProtection)) .setter(setter(Builder::deletionProtection)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DeletionProtection").build()) .build(); private static final SdkField HTTP_ENDPOINT_ENABLED_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("HttpEndpointEnabled").getter(getter(DBCluster::httpEndpointEnabled)) .setter(setter(Builder::httpEndpointEnabled)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("HttpEndpointEnabled").build()) .build(); private static final SdkField ACTIVITY_STREAM_MODE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("ActivityStreamMode").getter(getter(DBCluster::activityStreamModeAsString)) .setter(setter(Builder::activityStreamMode)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ActivityStreamMode").build()) .build(); private static final SdkField ACTIVITY_STREAM_STATUS_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("ActivityStreamStatus").getter(getter(DBCluster::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(DBCluster::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(DBCluster::activityStreamKinesisStreamName)) .setter(setter(Builder::activityStreamKinesisStreamName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ActivityStreamKinesisStreamName") .build()).build(); private static final SdkField COPY_TAGS_TO_SNAPSHOT_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("CopyTagsToSnapshot").getter(getter(DBCluster::copyTagsToSnapshot)) .setter(setter(Builder::copyTagsToSnapshot)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CopyTagsToSnapshot").build()) .build(); private static final SdkField CROSS_ACCOUNT_CLONE_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("CrossAccountClone").getter(getter(DBCluster::crossAccountClone)) .setter(setter(Builder::crossAccountClone)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CrossAccountClone").build()).build(); private static final SdkField> DOMAIN_MEMBERSHIPS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("DomainMemberships") .getter(getter(DBCluster::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> TAG_LIST_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("TagList") .getter(getter(DBCluster::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 GLOBAL_WRITE_FORWARDING_STATUS_FIELD = SdkField . builder(MarshallingType.STRING) .memberName("GlobalWriteForwardingStatus") .getter(getter(DBCluster::globalWriteForwardingStatusAsString)) .setter(setter(Builder::globalWriteForwardingStatus)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("GlobalWriteForwardingStatus") .build()).build(); private static final SdkField GLOBAL_WRITE_FORWARDING_REQUESTED_FIELD = SdkField . builder(MarshallingType.BOOLEAN) .memberName("GlobalWriteForwardingRequested") .getter(getter(DBCluster::globalWriteForwardingRequested)) .setter(setter(Builder::globalWriteForwardingRequested)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("GlobalWriteForwardingRequested") .build()).build(); private static final SdkField PENDING_MODIFIED_VALUES_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("PendingModifiedValues") .getter(getter(DBCluster::pendingModifiedValues)).setter(setter(Builder::pendingModifiedValues)) .constructor(ClusterPendingModifiedValues::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PendingModifiedValues").build()) .build(); private static final SdkField DB_CLUSTER_INSTANCE_CLASS_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBClusterInstanceClass").getter(getter(DBCluster::dbClusterInstanceClass)) .setter(setter(Builder::dbClusterInstanceClass)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DBClusterInstanceClass").build()) .build(); private static final SdkField STORAGE_TYPE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("StorageType").getter(getter(DBCluster::storageType)).setter(setter(Builder::storageType)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("StorageType").build()).build(); private static final SdkField IOPS_FIELD = SdkField. builder(MarshallingType.INTEGER).memberName("Iops") .getter(getter(DBCluster::iops)).setter(setter(Builder::iops)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Iops").build()).build(); private static final SdkField PUBLICLY_ACCESSIBLE_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("PubliclyAccessible").getter(getter(DBCluster::publiclyAccessible)) .setter(setter(Builder::publiclyAccessible)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PubliclyAccessible").build()) .build(); private static final SdkField AUTO_MINOR_VERSION_UPGRADE_FIELD = SdkField. builder(MarshallingType.BOOLEAN) .memberName("AutoMinorVersionUpgrade").getter(getter(DBCluster::autoMinorVersionUpgrade)) .setter(setter(Builder::autoMinorVersionUpgrade)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AutoMinorVersionUpgrade").build()) .build(); private static final SdkField MONITORING_INTERVAL_FIELD = SdkField. builder(MarshallingType.INTEGER) .memberName("MonitoringInterval").getter(getter(DBCluster::monitoringInterval)) .setter(setter(Builder::monitoringInterval)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MonitoringInterval").build()) .build(); private static final SdkField MONITORING_ROLE_ARN_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("MonitoringRoleArn").getter(getter(DBCluster::monitoringRoleArn)) .setter(setter(Builder::monitoringRoleArn)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MonitoringRoleArn").build()).build(); private static final SdkField PERFORMANCE_INSIGHTS_ENABLED_FIELD = SdkField . builder(MarshallingType.BOOLEAN) .memberName("PerformanceInsightsEnabled") .getter(getter(DBCluster::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(DBCluster::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(DBCluster::performanceInsightsRetentionPeriod)) .setter(setter(Builder::performanceInsightsRetentionPeriod)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("PerformanceInsightsRetentionPeriod") .build()).build(); private static final SdkField SERVERLESS_V2_SCALING_CONFIGURATION_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("ServerlessV2ScalingConfiguration") .getter(getter(DBCluster::serverlessV2ScalingConfiguration)) .setter(setter(Builder::serverlessV2ScalingConfiguration)) .constructor(ServerlessV2ScalingConfigurationInfo::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ServerlessV2ScalingConfiguration") .build()).build(); private static final SdkField NETWORK_TYPE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("NetworkType").getter(getter(DBCluster::networkType)).setter(setter(Builder::networkType)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("NetworkType").build()).build(); private static final SdkField DB_SYSTEM_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DBSystemId").getter(getter(DBCluster::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(DBCluster::masterUserSecret)).setter(setter(Builder::masterUserSecret)) .constructor(MasterUserSecret::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("MasterUserSecret").build()).build(); private static final SdkField IO_OPTIMIZED_NEXT_ALLOWED_MODIFICATION_TIME_FIELD = SdkField . builder(MarshallingType.INSTANT) .memberName("IOOptimizedNextAllowedModificationTime") .getter(getter(DBCluster::ioOptimizedNextAllowedModificationTime)) .setter(setter(Builder::ioOptimizedNextAllowedModificationTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("IOOptimizedNextAllowedModificationTime").build()).build(); private static final SdkField LOCAL_WRITE_FORWARDING_STATUS_FIELD = SdkField . builder(MarshallingType.STRING) .memberName("LocalWriteForwardingStatus") .getter(getter(DBCluster::localWriteForwardingStatusAsString)) .setter(setter(Builder::localWriteForwardingStatus)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("LocalWriteForwardingStatus").build()) .build(); private static final SdkField AWS_BACKUP_RECOVERY_POINT_ARN_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("AwsBackupRecoveryPointArn").getter(getter(DBCluster::awsBackupRecoveryPointArn)) .setter(setter(Builder::awsBackupRecoveryPointArn)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AwsBackupRecoveryPointArn").build()) .build(); private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(ALLOCATED_STORAGE_FIELD, AVAILABILITY_ZONES_FIELD, BACKUP_RETENTION_PERIOD_FIELD, CHARACTER_SET_NAME_FIELD, DATABASE_NAME_FIELD, DB_CLUSTER_IDENTIFIER_FIELD, DB_CLUSTER_PARAMETER_GROUP_FIELD, DB_SUBNET_GROUP_FIELD, STATUS_FIELD, AUTOMATIC_RESTART_TIME_FIELD, PERCENT_PROGRESS_FIELD, EARLIEST_RESTORABLE_TIME_FIELD, ENDPOINT_FIELD, READER_ENDPOINT_FIELD, CUSTOM_ENDPOINTS_FIELD, MULTI_AZ_FIELD, ENGINE_FIELD, ENGINE_VERSION_FIELD, LATEST_RESTORABLE_TIME_FIELD, PORT_FIELD, MASTER_USERNAME_FIELD, DB_CLUSTER_OPTION_GROUP_MEMBERSHIPS_FIELD, PREFERRED_BACKUP_WINDOW_FIELD, PREFERRED_MAINTENANCE_WINDOW_FIELD, REPLICATION_SOURCE_IDENTIFIER_FIELD, READ_REPLICA_IDENTIFIERS_FIELD, DB_CLUSTER_MEMBERS_FIELD, VPC_SECURITY_GROUPS_FIELD, HOSTED_ZONE_ID_FIELD, STORAGE_ENCRYPTED_FIELD, KMS_KEY_ID_FIELD, DB_CLUSTER_RESOURCE_ID_FIELD, DB_CLUSTER_ARN_FIELD, ASSOCIATED_ROLES_FIELD, IAM_DATABASE_AUTHENTICATION_ENABLED_FIELD, CLONE_GROUP_ID_FIELD, CLUSTER_CREATE_TIME_FIELD, EARLIEST_BACKTRACK_TIME_FIELD, BACKTRACK_WINDOW_FIELD, BACKTRACK_CONSUMED_CHANGE_RECORDS_FIELD, ENABLED_CLOUDWATCH_LOGS_EXPORTS_FIELD, CAPACITY_FIELD, ENGINE_MODE_FIELD, SCALING_CONFIGURATION_INFO_FIELD, DELETION_PROTECTION_FIELD, HTTP_ENDPOINT_ENABLED_FIELD, ACTIVITY_STREAM_MODE_FIELD, ACTIVITY_STREAM_STATUS_FIELD, ACTIVITY_STREAM_KMS_KEY_ID_FIELD, ACTIVITY_STREAM_KINESIS_STREAM_NAME_FIELD, COPY_TAGS_TO_SNAPSHOT_FIELD, CROSS_ACCOUNT_CLONE_FIELD, DOMAIN_MEMBERSHIPS_FIELD, TAG_LIST_FIELD, GLOBAL_WRITE_FORWARDING_STATUS_FIELD, GLOBAL_WRITE_FORWARDING_REQUESTED_FIELD, PENDING_MODIFIED_VALUES_FIELD, DB_CLUSTER_INSTANCE_CLASS_FIELD, STORAGE_TYPE_FIELD, IOPS_FIELD, PUBLICLY_ACCESSIBLE_FIELD, AUTO_MINOR_VERSION_UPGRADE_FIELD, MONITORING_INTERVAL_FIELD, MONITORING_ROLE_ARN_FIELD, PERFORMANCE_INSIGHTS_ENABLED_FIELD, PERFORMANCE_INSIGHTS_KMS_KEY_ID_FIELD, PERFORMANCE_INSIGHTS_RETENTION_PERIOD_FIELD, SERVERLESS_V2_SCALING_CONFIGURATION_FIELD, NETWORK_TYPE_FIELD, DB_SYSTEM_ID_FIELD, MASTER_USER_SECRET_FIELD, IO_OPTIMIZED_NEXT_ALLOWED_MODIFICATION_TIME_FIELD, LOCAL_WRITE_FORWARDING_STATUS_FIELD, AWS_BACKUP_RECOVERY_POINT_ARN_FIELD)); private static final long serialVersionUID = 1L; private final Integer allocatedStorage; private final List availabilityZones; private final Integer backupRetentionPeriod; private final String characterSetName; private final String databaseName; private final String dbClusterIdentifier; private final String dbClusterParameterGroup; private final String dbSubnetGroup; private final String status; private final Instant automaticRestartTime; private final String percentProgress; private final Instant earliestRestorableTime; private final String endpoint; private final String readerEndpoint; private final List customEndpoints; private final Boolean multiAZ; private final String engine; private final String engineVersion; private final Instant latestRestorableTime; private final Integer port; private final String masterUsername; private final List dbClusterOptionGroupMemberships; private final String preferredBackupWindow; private final String preferredMaintenanceWindow; private final String replicationSourceIdentifier; private final List readReplicaIdentifiers; private final List dbClusterMembers; private final List vpcSecurityGroups; private final String hostedZoneId; private final Boolean storageEncrypted; private final String kmsKeyId; private final String dbClusterResourceId; private final String dbClusterArn; private final List associatedRoles; private final Boolean iamDatabaseAuthenticationEnabled; private final String cloneGroupId; private final Instant clusterCreateTime; private final Instant earliestBacktrackTime; private final Long backtrackWindow; private final Long backtrackConsumedChangeRecords; private final List enabledCloudwatchLogsExports; private final Integer capacity; private final String engineMode; private final ScalingConfigurationInfo scalingConfigurationInfo; private final Boolean deletionProtection; private final Boolean httpEndpointEnabled; private final String activityStreamMode; private final String activityStreamStatus; private final String activityStreamKmsKeyId; private final String activityStreamKinesisStreamName; private final Boolean copyTagsToSnapshot; private final Boolean crossAccountClone; private final List domainMemberships; private final List tagList; private final String globalWriteForwardingStatus; private final Boolean globalWriteForwardingRequested; private final ClusterPendingModifiedValues pendingModifiedValues; private final String dbClusterInstanceClass; private final String storageType; private final Integer iops; private final Boolean publiclyAccessible; private final Boolean autoMinorVersionUpgrade; private final Integer monitoringInterval; private final String monitoringRoleArn; private final Boolean performanceInsightsEnabled; private final String performanceInsightsKMSKeyId; private final Integer performanceInsightsRetentionPeriod; private final ServerlessV2ScalingConfigurationInfo serverlessV2ScalingConfiguration; private final String networkType; private final String dbSystemId; private final MasterUserSecret masterUserSecret; private final Instant ioOptimizedNextAllowedModificationTime; private final String localWriteForwardingStatus; private final String awsBackupRecoveryPointArn; private DBCluster(BuilderImpl builder) { this.allocatedStorage = builder.allocatedStorage; this.availabilityZones = builder.availabilityZones; this.backupRetentionPeriod = builder.backupRetentionPeriod; this.characterSetName = builder.characterSetName; this.databaseName = builder.databaseName; this.dbClusterIdentifier = builder.dbClusterIdentifier; this.dbClusterParameterGroup = builder.dbClusterParameterGroup; this.dbSubnetGroup = builder.dbSubnetGroup; this.status = builder.status; this.automaticRestartTime = builder.automaticRestartTime; this.percentProgress = builder.percentProgress; this.earliestRestorableTime = builder.earliestRestorableTime; this.endpoint = builder.endpoint; this.readerEndpoint = builder.readerEndpoint; this.customEndpoints = builder.customEndpoints; this.multiAZ = builder.multiAZ; this.engine = builder.engine; this.engineVersion = builder.engineVersion; this.latestRestorableTime = builder.latestRestorableTime; this.port = builder.port; this.masterUsername = builder.masterUsername; this.dbClusterOptionGroupMemberships = builder.dbClusterOptionGroupMemberships; this.preferredBackupWindow = builder.preferredBackupWindow; this.preferredMaintenanceWindow = builder.preferredMaintenanceWindow; this.replicationSourceIdentifier = builder.replicationSourceIdentifier; this.readReplicaIdentifiers = builder.readReplicaIdentifiers; this.dbClusterMembers = builder.dbClusterMembers; this.vpcSecurityGroups = builder.vpcSecurityGroups; this.hostedZoneId = builder.hostedZoneId; this.storageEncrypted = builder.storageEncrypted; this.kmsKeyId = builder.kmsKeyId; this.dbClusterResourceId = builder.dbClusterResourceId; this.dbClusterArn = builder.dbClusterArn; this.associatedRoles = builder.associatedRoles; this.iamDatabaseAuthenticationEnabled = builder.iamDatabaseAuthenticationEnabled; this.cloneGroupId = builder.cloneGroupId; this.clusterCreateTime = builder.clusterCreateTime; this.earliestBacktrackTime = builder.earliestBacktrackTime; this.backtrackWindow = builder.backtrackWindow; this.backtrackConsumedChangeRecords = builder.backtrackConsumedChangeRecords; this.enabledCloudwatchLogsExports = builder.enabledCloudwatchLogsExports; this.capacity = builder.capacity; this.engineMode = builder.engineMode; this.scalingConfigurationInfo = builder.scalingConfigurationInfo; this.deletionProtection = builder.deletionProtection; this.httpEndpointEnabled = builder.httpEndpointEnabled; this.activityStreamMode = builder.activityStreamMode; this.activityStreamStatus = builder.activityStreamStatus; this.activityStreamKmsKeyId = builder.activityStreamKmsKeyId; this.activityStreamKinesisStreamName = builder.activityStreamKinesisStreamName; this.copyTagsToSnapshot = builder.copyTagsToSnapshot; this.crossAccountClone = builder.crossAccountClone; this.domainMemberships = builder.domainMemberships; this.tagList = builder.tagList; this.globalWriteForwardingStatus = builder.globalWriteForwardingStatus; this.globalWriteForwardingRequested = builder.globalWriteForwardingRequested; this.pendingModifiedValues = builder.pendingModifiedValues; this.dbClusterInstanceClass = builder.dbClusterInstanceClass; this.storageType = builder.storageType; this.iops = builder.iops; this.publiclyAccessible = builder.publiclyAccessible; this.autoMinorVersionUpgrade = builder.autoMinorVersionUpgrade; this.monitoringInterval = builder.monitoringInterval; this.monitoringRoleArn = builder.monitoringRoleArn; this.performanceInsightsEnabled = builder.performanceInsightsEnabled; this.performanceInsightsKMSKeyId = builder.performanceInsightsKMSKeyId; this.performanceInsightsRetentionPeriod = builder.performanceInsightsRetentionPeriod; this.serverlessV2ScalingConfiguration = builder.serverlessV2ScalingConfiguration; this.networkType = builder.networkType; this.dbSystemId = builder.dbSystemId; this.masterUserSecret = builder.masterUserSecret; this.ioOptimizedNextAllowedModificationTime = builder.ioOptimizedNextAllowedModificationTime; this.localWriteForwardingStatus = builder.localWriteForwardingStatus; this.awsBackupRecoveryPointArn = builder.awsBackupRecoveryPointArn; } /** *

* For all database engines except Amazon Aurora, AllocatedStorage specifies the allocated storage size * in gibibytes (GiB). For Aurora, AllocatedStorage always returns 1, because Aurora DB cluster storage * size isn't fixed, but instead automatically adjusts as needed. *

* * @return For all database engines except Amazon Aurora, AllocatedStorage specifies the allocated * storage size in gibibytes (GiB). For Aurora, AllocatedStorage always returns 1, because * Aurora DB cluster storage size isn't fixed, but instead automatically adjusts as needed. */ public final Integer allocatedStorage() { return allocatedStorage; } /** * For responses, this returns true if the service returned a value for the AvailabilityZones 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 hasAvailabilityZones() { return availabilityZones != null && !(availabilityZones instanceof SdkAutoConstructList); } /** *

* The list of Availability Zones (AZs) where instances in the DB cluster can be created. *

*

* 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 #hasAvailabilityZones} method. *

* * @return The list of Availability Zones (AZs) where instances in the DB cluster can be created. */ public final List availabilityZones() { return availabilityZones; } /** *

* 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; } /** *

* If present, specifies the name of the character set that this cluster is associated with. *

* * @return If present, specifies the name of the character set that this cluster is associated with. */ public final String characterSetName() { return characterSetName; } /** *

* The name of the initial database that was specified for the DB cluster when it was created, if one was provided. * This same name is returned for the life of the DB cluster. *

* * @return The name of the initial database that was specified for the DB cluster when it was created, if one was * provided. This same name is returned for the life of the DB cluster. */ public final String databaseName() { return databaseName; } /** *

* The user-supplied identifier for the DB cluster. This identifier is the unique key that identifies a DB cluster. *

* * @return The user-supplied identifier for the DB cluster. This identifier is the unique key that identifies a DB * cluster. */ public final String dbClusterIdentifier() { return dbClusterIdentifier; } /** *

* The name of the DB cluster parameter group for the DB cluster. *

* * @return The name of the DB cluster parameter group for the DB cluster. */ public final String dbClusterParameterGroup() { return dbClusterParameterGroup; } /** *

* Information about the subnet group associated with the DB cluster, including the name, description, and subnets * in the subnet group. *

* * @return Information about the subnet group associated with the DB cluster, including the name, description, and * subnets in the subnet group. */ public final String dbSubnetGroup() { return dbSubnetGroup; } /** *

* The current state of this DB cluster. *

* * @return The current state of this DB cluster. */ public final String status() { return status; } /** *

* The time when a stopped DB cluster is restarted automatically. *

* * @return The time when a stopped DB cluster is restarted automatically. */ public final Instant automaticRestartTime() { return automaticRestartTime; } /** *

* The progress of the operation as a percentage. *

* * @return The progress of the operation as a percentage. */ public final String percentProgress() { return percentProgress; } /** *

* The earliest time to which a database can be restored with point-in-time restore. *

* * @return The earliest time to which a database can be restored with point-in-time restore. */ public final Instant earliestRestorableTime() { return earliestRestorableTime; } /** *

* The connection endpoint for the primary instance of the DB cluster. *

* * @return The connection endpoint for the primary instance of the DB cluster. */ public final String endpoint() { return endpoint; } /** *

* The reader endpoint for the DB cluster. The reader endpoint for a DB cluster load-balances connections across the * Aurora Replicas that are available in a DB cluster. As clients request new connections to the reader endpoint, * Aurora distributes the connection requests among the Aurora Replicas in the DB cluster. This functionality can * help balance your read workload across multiple Aurora Replicas in your DB cluster. *

*

* If a failover occurs, and the Aurora Replica that you are connected to is promoted to be the primary instance, * your connection is dropped. To continue sending your read workload to other Aurora Replicas in the cluster, you * can then reconnect to the reader endpoint. *

* * @return The reader endpoint for the DB cluster. The reader endpoint for a DB cluster load-balances connections * across the Aurora Replicas that are available in a DB cluster. As clients request new connections to the * reader endpoint, Aurora distributes the connection requests among the Aurora Replicas in the DB cluster. * This functionality can help balance your read workload across multiple Aurora Replicas in your DB * cluster.

*

* If a failover occurs, and the Aurora Replica that you are connected to is promoted to be the primary * instance, your connection is dropped. To continue sending your read workload to other Aurora Replicas in * the cluster, you can then reconnect to the reader endpoint. */ public final String readerEndpoint() { return readerEndpoint; } /** * For responses, this returns true if the service returned a value for the CustomEndpoints 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 hasCustomEndpoints() { return customEndpoints != null && !(customEndpoints instanceof SdkAutoConstructList); } /** *

* The custom endpoints associated with the DB cluster. *

*

* 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 #hasCustomEndpoints} method. *

* * @return The custom endpoints associated with the DB cluster. */ public final List customEndpoints() { return customEndpoints; } /** *

* Indicates whether the DB cluster has instances in multiple Availability Zones. *

* * @return Indicates whether the DB cluster has instances in multiple Availability Zones. */ public final Boolean multiAZ() { return multiAZ; } /** *

* The database engine used for this DB cluster. *

* * @return The database engine used for this DB cluster. */ public final String engine() { return engine; } /** *

* The version of the database engine. *

* * @return The version of the database engine. */ public final String engineVersion() { return engineVersion; } /** *

* The latest time to which a database can be restored with point-in-time restore. *

* * @return The latest time to which a database can be restored with point-in-time restore. */ public final Instant latestRestorableTime() { return latestRestorableTime; } /** *

* The port that the database engine is listening on. *

* * @return The port that the database engine is listening on. */ public final Integer port() { return port; } /** *

* The master username for the DB cluster. *

* * @return The master username for the DB cluster. */ public final String masterUsername() { return masterUsername; } /** * For responses, this returns true if the service returned a value for the DBClusterOptionGroupMemberships * 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 hasDbClusterOptionGroupMemberships() { return dbClusterOptionGroupMemberships != null && !(dbClusterOptionGroupMemberships instanceof SdkAutoConstructList); } /** *

* The list of option group memberships for this DB cluster. *

*

* 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 #hasDbClusterOptionGroupMemberships} * method. *

* * @return The list of option group memberships for this DB cluster. */ public final List dbClusterOptionGroupMemberships() { return dbClusterOptionGroupMemberships; } /** *

* 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 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; } /** *

* The identifier of the source DB cluster if this DB cluster is a read replica. *

* * @return The identifier of the source DB cluster if this DB cluster is a read replica. */ public final String replicationSourceIdentifier() { return replicationSourceIdentifier; } /** * For responses, this returns true if the service returned a value for the ReadReplicaIdentifiers 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 hasReadReplicaIdentifiers() { return readReplicaIdentifiers != null && !(readReplicaIdentifiers instanceof SdkAutoConstructList); } /** *

* Contains one or more identifiers of the read replicas associated with this DB cluster. *

*

* 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 #hasReadReplicaIdentifiers} method. *

* * @return Contains one or more identifiers of the read replicas associated with this DB cluster. */ public final List readReplicaIdentifiers() { return readReplicaIdentifiers; } /** * For responses, this returns true if the service returned a value for the DBClusterMembers 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 hasDbClusterMembers() { return dbClusterMembers != null && !(dbClusterMembers instanceof SdkAutoConstructList); } /** *

* The list of DB instances that make up the DB cluster. *

*

* 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 #hasDbClusterMembers} method. *

* * @return The list of DB instances that make up the DB cluster. */ public final List dbClusterMembers() { return dbClusterMembers; } /** * 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 VPC security groups that the DB cluster 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 VPC security groups that the DB cluster belongs to. */ public final List vpcSecurityGroups() { return vpcSecurityGroups; } /** *

* The ID that Amazon Route 53 assigns when you create a hosted zone. *

* * @return The ID that Amazon Route 53 assigns when you create a hosted zone. */ public final String hostedZoneId() { return hostedZoneId; } /** *

* Indicates whether the DB cluster is encrypted. *

* * @return Indicates whether the DB cluster is encrypted. */ public final Boolean storageEncrypted() { return storageEncrypted; } /** *

* If StorageEncrypted is enabled, the Amazon Web Services KMS key identifier for the encrypted DB * cluster. *

*

* 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 cluster.

*

* 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 cluster. This identifier is found in * Amazon Web Services CloudTrail log entries whenever the KMS key for the DB cluster is accessed. *

* * @return The Amazon Web Services Region-unique, immutable identifier for the DB cluster. This identifier is found * in Amazon Web Services CloudTrail log entries whenever the KMS key for the DB cluster is accessed. */ public final String dbClusterResourceId() { return dbClusterResourceId; } /** *

* The Amazon Resource Name (ARN) for the DB cluster. *

* * @return The Amazon Resource Name (ARN) for the DB cluster. */ public final String dbClusterArn() { return dbClusterArn; } /** * 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); } /** *

* A list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with the DB * cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other * Amazon Web Services on your behalf. *

*

* 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 A list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with the * DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access * other Amazon Web Services on your behalf. */ public final List associatedRoles() { return associatedRoles; } /** *

* Indicates whether the mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database * accounts is enabled. *

* * @return Indicates whether the mapping of Amazon Web Services Identity and Access Management (IAM) accounts to * database accounts is enabled. */ public final Boolean iamDatabaseAuthenticationEnabled() { return iamDatabaseAuthenticationEnabled; } /** *

* The ID of the clone group with which the DB cluster is associated. *

* * @return The ID of the clone group with which the DB cluster is associated. */ public final String cloneGroupId() { return cloneGroupId; } /** *

* The time when the DB cluster was created, in Universal Coordinated Time (UTC). *

* * @return The time when the DB cluster was created, in Universal Coordinated Time (UTC). */ public final Instant clusterCreateTime() { return clusterCreateTime; } /** *

* The earliest time to which a DB cluster can be backtracked. *

* * @return The earliest time to which a DB cluster can be backtracked. */ public final Instant earliestBacktrackTime() { return earliestBacktrackTime; } /** *

* The target backtrack window, in seconds. If this value is set to 0, backtracking is disabled for the * DB cluster. Otherwise, backtracking is enabled. *

* * @return The target backtrack window, in seconds. If this value is set to 0, backtracking is disabled * for the DB cluster. Otherwise, backtracking is enabled. */ public final Long backtrackWindow() { return backtrackWindow; } /** *

* The number of change records stored for Backtrack. *

* * @return The number of change records stored for Backtrack. */ public final Long backtrackConsumedChangeRecords() { return backtrackConsumedChangeRecords; } /** * 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 cluster is configured to export to CloudWatch Logs. *

*

* Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS Database Log * Files in the Amazon Aurora 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 cluster is configured to export to CloudWatch Logs.

*

* Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS * Database Log Files in the Amazon Aurora User Guide. */ public final List enabledCloudwatchLogsExports() { return enabledCloudwatchLogsExports; } /** *

* The current capacity of an Aurora Serverless v1 DB cluster. The capacity is 0 (zero) when the * cluster is paused. *

*

* For more information about Aurora Serverless v1, see Using Amazon Aurora * Serverless v1 in the Amazon Aurora User Guide. *

* * @return The current capacity of an Aurora Serverless v1 DB cluster. The capacity is 0 (zero) when * the cluster is paused.

*

* For more information about Aurora Serverless v1, see Using Amazon * Aurora Serverless v1 in the Amazon Aurora User Guide. */ public final Integer capacity() { return capacity; } /** *

* The DB engine mode of the DB cluster, either provisioned or serverless. *

*

* For more information, see CreateDBCluster. *

* * @return The DB engine mode of the DB cluster, either provisioned or serverless.

*

* For more information, see * CreateDBCluster. */ public final String engineMode() { return engineMode; } /** * Returns the value of the ScalingConfigurationInfo property for this object. * * @return The value of the ScalingConfigurationInfo property for this object. */ public final ScalingConfigurationInfo scalingConfigurationInfo() { return scalingConfigurationInfo; } /** *

* Indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion * protection is enabled. *

* * @return Indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. */ public final Boolean deletionProtection() { return deletionProtection; } /** *

* Indicates whether the HTTP endpoint for an Aurora Serverless v1 DB cluster is enabled. *

*

* When enabled, the HTTP endpoint provides a connectionless web service API for running SQL queries on the Aurora * Serverless v1 DB cluster. You can also query your database from inside the RDS console with the query editor. *

*

* For more information, see Using the Data API for Aurora * Serverless v1 in the Amazon Aurora User Guide. *

* * @return Indicates whether the HTTP endpoint for an Aurora Serverless v1 DB cluster is enabled.

*

* When enabled, the HTTP endpoint provides a connectionless web service API for running SQL queries on the * Aurora Serverless v1 DB cluster. You can also query your database from inside the RDS console with the * query editor. *

*

* For more information, see Using the Data API for * Aurora Serverless v1 in the Amazon Aurora User Guide. */ public final Boolean httpEndpointEnabled() { return httpEndpointEnabled; } /** *

* The mode of the database activity stream. Database events such as a change or access generate an activity stream * event. The database session can handle these events either synchronously or 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. The database session can handle these events either synchronously or 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. The database session can handle these events either synchronously or 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. The database session can handle these events either synchronously or asynchronously. * @see ActivityStreamMode */ public final String activityStreamModeAsString() { return activityStreamMode; } /** *

* 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; } /** *

* Indicates whether tags are copied from the DB cluster to snapshots of the DB cluster. *

* * @return Indicates whether tags are copied from the DB cluster to snapshots of the DB cluster. */ public final Boolean copyTagsToSnapshot() { return copyTagsToSnapshot; } /** *

* Indicates whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account. *

* * @return Indicates whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services * account. */ public final Boolean crossAccountClone() { return crossAccountClone; } /** * 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 cluster. *

*

* 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 cluster. */ public final List domainMemberships() { return domainMemberships; } /** * 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; } /** *

* The status of write forwarding for a secondary cluster in an Aurora global database. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #globalWriteForwardingStatus} will return {@link WriteForwardingStatus#UNKNOWN_TO_SDK_VERSION}. The raw * value returned by the service is available from {@link #globalWriteForwardingStatusAsString}. *

* * @return The status of write forwarding for a secondary cluster in an Aurora global database. * @see WriteForwardingStatus */ public final WriteForwardingStatus globalWriteForwardingStatus() { return WriteForwardingStatus.fromValue(globalWriteForwardingStatus); } /** *

* The status of write forwarding for a secondary cluster in an Aurora global database. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #globalWriteForwardingStatus} will return {@link WriteForwardingStatus#UNKNOWN_TO_SDK_VERSION}. The raw * value returned by the service is available from {@link #globalWriteForwardingStatusAsString}. *

* * @return The status of write forwarding for a secondary cluster in an Aurora global database. * @see WriteForwardingStatus */ public final String globalWriteForwardingStatusAsString() { return globalWriteForwardingStatus; } /** *

* Specifies whether write forwarding is enabled for a secondary cluster in an Aurora global database. Because write * forwarding takes time to enable, check the value of GlobalWriteForwardingStatus to confirm that the * request has completed before using the write forwarding feature for this cluster. *

* * @return Specifies whether write forwarding is enabled for a secondary cluster in an Aurora global database. * Because write forwarding takes time to enable, check the value of * GlobalWriteForwardingStatus to confirm that the request has completed before using the write * forwarding feature for this cluster. */ public final Boolean globalWriteForwardingRequested() { return globalWriteForwardingRequested; } /** *

* Information about pending changes to the DB cluster. This information is returned only when there are pending * changes. Specific changes are identified by subelements. *

* * @return Information about pending changes to the DB cluster. This information is returned only when there are * pending changes. Specific changes are identified by subelements. */ public final ClusterPendingModifiedValues pendingModifiedValues() { return pendingModifiedValues; } /** *

* The name of the compute and memory capacity class of the DB instance. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @return The name of the compute and memory capacity class of the DB instance.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ public final String dbClusterInstanceClass() { return dbClusterInstanceClass; } /** *

* The storage type associated with the DB cluster. *

* * @return The storage type associated with the DB cluster. */ public final String storageType() { return storageType; } /** *

* The Provisioned IOPS (I/O operations per second) value. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @return The Provisioned IOPS (I/O operations per second) value.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ public final Integer iops() { return iops; } /** *

* Indicates whether the DB cluster 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 cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves to a * private IP address. *

*

* For more information, see CreateDBCluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @return Indicates whether the DB cluster 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 cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves * to a private IP address. *

*

* For more information, see CreateDBCluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ public final Boolean publiclyAccessible() { return publiclyAccessible; } /** *

* Indicates whether minor version patches are applied automatically. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @return Indicates whether minor version patches are applied automatically.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ public final Boolean autoMinorVersionUpgrade() { return autoMinorVersionUpgrade; } /** *

* The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @return The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB * cluster.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ public final Integer monitoringInterval() { return monitoringInterval; } /** *

* The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @return The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch * Logs.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ public final String monitoringRoleArn() { return monitoringRoleArn; } /** *

* Indicates whether Performance Insights is enabled for the DB cluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @return Indicates whether Performance Insights is enabled for the DB cluster.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ 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. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @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. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. */ public final String performanceInsightsKMSKeyId() { return performanceInsightsKMSKeyId; } /** *

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

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

*

* 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.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

*

* 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; } /** * Returns the value of the ServerlessV2ScalingConfiguration property for this object. * * @return The value of the ServerlessV2ScalingConfiguration property for this object. */ public final ServerlessV2ScalingConfigurationInfo serverlessV2ScalingConfiguration() { return serverlessV2ScalingConfiguration; } /** *

* The network type of the DB instance. *

*

* The network type is determined by the DBSubnetGroup specified for the DB cluster. 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 Aurora User Guide. *

*

* This setting is only for Aurora DB clusters. *

*

* Valid Values: IPV4 | DUAL *

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

*

* The network type is determined by the DBSubnetGroup specified for the DB cluster. 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 Aurora User Guide. *

*

* This setting is only for Aurora DB clusters. *

*

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

* Reserved for future use. *

* * @return Reserved for future use. */ 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 and Password management * with Amazon Web Services Secrets Manager in the Amazon Aurora 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 and Password * management with Amazon Web Services Secrets Manager in the Amazon Aurora User Guide. */ public final MasterUserSecret masterUserSecret() { return masterUserSecret; } /** *

* The next time you can modify the DB cluster to use the aurora-iopt1 storage type. *

*

* This setting is only for Aurora DB clusters. *

* * @return The next time you can modify the DB cluster to use the aurora-iopt1 storage type.

*

* This setting is only for Aurora DB clusters. */ public final Instant ioOptimizedNextAllowedModificationTime() { return ioOptimizedNextAllowedModificationTime; } /** *

* Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, or is in * the process of enabling it. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #localWriteForwardingStatus} will return {@link LocalWriteForwardingStatus#UNKNOWN_TO_SDK_VERSION}. The * raw value returned by the service is available from {@link #localWriteForwardingStatusAsString}. *

* * @return Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, * or is in the process of enabling it. * @see LocalWriteForwardingStatus */ public final LocalWriteForwardingStatus localWriteForwardingStatus() { return LocalWriteForwardingStatus.fromValue(localWriteForwardingStatus); } /** *

* Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, or is in * the process of enabling it. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #localWriteForwardingStatus} will return {@link LocalWriteForwardingStatus#UNKNOWN_TO_SDK_VERSION}. The * raw value returned by the service is available from {@link #localWriteForwardingStatusAsString}. *

* * @return Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, * or is in the process of enabling it. * @see LocalWriteForwardingStatus */ public final String localWriteForwardingStatusAsString() { return localWriteForwardingStatus; } /** *

* 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; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public final int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + Objects.hashCode(allocatedStorage()); hashCode = 31 * hashCode + Objects.hashCode(hasAvailabilityZones() ? availabilityZones() : null); hashCode = 31 * hashCode + Objects.hashCode(backupRetentionPeriod()); hashCode = 31 * hashCode + Objects.hashCode(characterSetName()); hashCode = 31 * hashCode + Objects.hashCode(databaseName()); hashCode = 31 * hashCode + Objects.hashCode(dbClusterIdentifier()); hashCode = 31 * hashCode + Objects.hashCode(dbClusterParameterGroup()); hashCode = 31 * hashCode + Objects.hashCode(dbSubnetGroup()); hashCode = 31 * hashCode + Objects.hashCode(status()); hashCode = 31 * hashCode + Objects.hashCode(automaticRestartTime()); hashCode = 31 * hashCode + Objects.hashCode(percentProgress()); hashCode = 31 * hashCode + Objects.hashCode(earliestRestorableTime()); hashCode = 31 * hashCode + Objects.hashCode(endpoint()); hashCode = 31 * hashCode + Objects.hashCode(readerEndpoint()); hashCode = 31 * hashCode + Objects.hashCode(hasCustomEndpoints() ? customEndpoints() : null); hashCode = 31 * hashCode + Objects.hashCode(multiAZ()); hashCode = 31 * hashCode + Objects.hashCode(engine()); hashCode = 31 * hashCode + Objects.hashCode(engineVersion()); hashCode = 31 * hashCode + Objects.hashCode(latestRestorableTime()); hashCode = 31 * hashCode + Objects.hashCode(port()); hashCode = 31 * hashCode + Objects.hashCode(masterUsername()); hashCode = 31 * hashCode + Objects.hashCode(hasDbClusterOptionGroupMemberships() ? dbClusterOptionGroupMemberships() : null); hashCode = 31 * hashCode + Objects.hashCode(preferredBackupWindow()); hashCode = 31 * hashCode + Objects.hashCode(preferredMaintenanceWindow()); hashCode = 31 * hashCode + Objects.hashCode(replicationSourceIdentifier()); hashCode = 31 * hashCode + Objects.hashCode(hasReadReplicaIdentifiers() ? readReplicaIdentifiers() : null); hashCode = 31 * hashCode + Objects.hashCode(hasDbClusterMembers() ? dbClusterMembers() : null); hashCode = 31 * hashCode + Objects.hashCode(hasVpcSecurityGroups() ? vpcSecurityGroups() : null); hashCode = 31 * hashCode + Objects.hashCode(hostedZoneId()); hashCode = 31 * hashCode + Objects.hashCode(storageEncrypted()); hashCode = 31 * hashCode + Objects.hashCode(kmsKeyId()); hashCode = 31 * hashCode + Objects.hashCode(dbClusterResourceId()); hashCode = 31 * hashCode + Objects.hashCode(dbClusterArn()); hashCode = 31 * hashCode + Objects.hashCode(hasAssociatedRoles() ? associatedRoles() : null); hashCode = 31 * hashCode + Objects.hashCode(iamDatabaseAuthenticationEnabled()); hashCode = 31 * hashCode + Objects.hashCode(cloneGroupId()); hashCode = 31 * hashCode + Objects.hashCode(clusterCreateTime()); hashCode = 31 * hashCode + Objects.hashCode(earliestBacktrackTime()); hashCode = 31 * hashCode + Objects.hashCode(backtrackWindow()); hashCode = 31 * hashCode + Objects.hashCode(backtrackConsumedChangeRecords()); hashCode = 31 * hashCode + Objects.hashCode(hasEnabledCloudwatchLogsExports() ? enabledCloudwatchLogsExports() : null); hashCode = 31 * hashCode + Objects.hashCode(capacity()); hashCode = 31 * hashCode + Objects.hashCode(engineMode()); hashCode = 31 * hashCode + Objects.hashCode(scalingConfigurationInfo()); hashCode = 31 * hashCode + Objects.hashCode(deletionProtection()); hashCode = 31 * hashCode + Objects.hashCode(httpEndpointEnabled()); hashCode = 31 * hashCode + Objects.hashCode(activityStreamModeAsString()); hashCode = 31 * hashCode + Objects.hashCode(activityStreamStatusAsString()); hashCode = 31 * hashCode + Objects.hashCode(activityStreamKmsKeyId()); hashCode = 31 * hashCode + Objects.hashCode(activityStreamKinesisStreamName()); hashCode = 31 * hashCode + Objects.hashCode(copyTagsToSnapshot()); hashCode = 31 * hashCode + Objects.hashCode(crossAccountClone()); hashCode = 31 * hashCode + Objects.hashCode(hasDomainMemberships() ? domainMemberships() : null); hashCode = 31 * hashCode + Objects.hashCode(hasTagList() ? tagList() : null); hashCode = 31 * hashCode + Objects.hashCode(globalWriteForwardingStatusAsString()); hashCode = 31 * hashCode + Objects.hashCode(globalWriteForwardingRequested()); hashCode = 31 * hashCode + Objects.hashCode(pendingModifiedValues()); hashCode = 31 * hashCode + Objects.hashCode(dbClusterInstanceClass()); hashCode = 31 * hashCode + Objects.hashCode(storageType()); hashCode = 31 * hashCode + Objects.hashCode(iops()); hashCode = 31 * hashCode + Objects.hashCode(publiclyAccessible()); hashCode = 31 * hashCode + Objects.hashCode(autoMinorVersionUpgrade()); hashCode = 31 * hashCode + Objects.hashCode(monitoringInterval()); hashCode = 31 * hashCode + Objects.hashCode(monitoringRoleArn()); hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsEnabled()); hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsKMSKeyId()); hashCode = 31 * hashCode + Objects.hashCode(performanceInsightsRetentionPeriod()); hashCode = 31 * hashCode + Objects.hashCode(serverlessV2ScalingConfiguration()); hashCode = 31 * hashCode + Objects.hashCode(networkType()); hashCode = 31 * hashCode + Objects.hashCode(dbSystemId()); hashCode = 31 * hashCode + Objects.hashCode(masterUserSecret()); hashCode = 31 * hashCode + Objects.hashCode(ioOptimizedNextAllowedModificationTime()); hashCode = 31 * hashCode + Objects.hashCode(localWriteForwardingStatusAsString()); hashCode = 31 * hashCode + Objects.hashCode(awsBackupRecoveryPointArn()); 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 DBCluster)) { return false; } DBCluster other = (DBCluster) obj; return Objects.equals(allocatedStorage(), other.allocatedStorage()) && hasAvailabilityZones() == other.hasAvailabilityZones() && Objects.equals(availabilityZones(), other.availabilityZones()) && Objects.equals(backupRetentionPeriod(), other.backupRetentionPeriod()) && Objects.equals(characterSetName(), other.characterSetName()) && Objects.equals(databaseName(), other.databaseName()) && Objects.equals(dbClusterIdentifier(), other.dbClusterIdentifier()) && Objects.equals(dbClusterParameterGroup(), other.dbClusterParameterGroup()) && Objects.equals(dbSubnetGroup(), other.dbSubnetGroup()) && Objects.equals(status(), other.status()) && Objects.equals(automaticRestartTime(), other.automaticRestartTime()) && Objects.equals(percentProgress(), other.percentProgress()) && Objects.equals(earliestRestorableTime(), other.earliestRestorableTime()) && Objects.equals(endpoint(), other.endpoint()) && Objects.equals(readerEndpoint(), other.readerEndpoint()) && hasCustomEndpoints() == other.hasCustomEndpoints() && Objects.equals(customEndpoints(), other.customEndpoints()) && Objects.equals(multiAZ(), other.multiAZ()) && Objects.equals(engine(), other.engine()) && Objects.equals(engineVersion(), other.engineVersion()) && Objects.equals(latestRestorableTime(), other.latestRestorableTime()) && Objects.equals(port(), other.port()) && Objects.equals(masterUsername(), other.masterUsername()) && hasDbClusterOptionGroupMemberships() == other.hasDbClusterOptionGroupMemberships() && Objects.equals(dbClusterOptionGroupMemberships(), other.dbClusterOptionGroupMemberships()) && Objects.equals(preferredBackupWindow(), other.preferredBackupWindow()) && Objects.equals(preferredMaintenanceWindow(), other.preferredMaintenanceWindow()) && Objects.equals(replicationSourceIdentifier(), other.replicationSourceIdentifier()) && hasReadReplicaIdentifiers() == other.hasReadReplicaIdentifiers() && Objects.equals(readReplicaIdentifiers(), other.readReplicaIdentifiers()) && hasDbClusterMembers() == other.hasDbClusterMembers() && Objects.equals(dbClusterMembers(), other.dbClusterMembers()) && hasVpcSecurityGroups() == other.hasVpcSecurityGroups() && Objects.equals(vpcSecurityGroups(), other.vpcSecurityGroups()) && Objects.equals(hostedZoneId(), other.hostedZoneId()) && Objects.equals(storageEncrypted(), other.storageEncrypted()) && Objects.equals(kmsKeyId(), other.kmsKeyId()) && Objects.equals(dbClusterResourceId(), other.dbClusterResourceId()) && Objects.equals(dbClusterArn(), other.dbClusterArn()) && hasAssociatedRoles() == other.hasAssociatedRoles() && Objects.equals(associatedRoles(), other.associatedRoles()) && Objects.equals(iamDatabaseAuthenticationEnabled(), other.iamDatabaseAuthenticationEnabled()) && Objects.equals(cloneGroupId(), other.cloneGroupId()) && Objects.equals(clusterCreateTime(), other.clusterCreateTime()) && Objects.equals(earliestBacktrackTime(), other.earliestBacktrackTime()) && Objects.equals(backtrackWindow(), other.backtrackWindow()) && Objects.equals(backtrackConsumedChangeRecords(), other.backtrackConsumedChangeRecords()) && hasEnabledCloudwatchLogsExports() == other.hasEnabledCloudwatchLogsExports() && Objects.equals(enabledCloudwatchLogsExports(), other.enabledCloudwatchLogsExports()) && Objects.equals(capacity(), other.capacity()) && Objects.equals(engineMode(), other.engineMode()) && Objects.equals(scalingConfigurationInfo(), other.scalingConfigurationInfo()) && Objects.equals(deletionProtection(), other.deletionProtection()) && Objects.equals(httpEndpointEnabled(), other.httpEndpointEnabled()) && Objects.equals(activityStreamModeAsString(), other.activityStreamModeAsString()) && Objects.equals(activityStreamStatusAsString(), other.activityStreamStatusAsString()) && Objects.equals(activityStreamKmsKeyId(), other.activityStreamKmsKeyId()) && Objects.equals(activityStreamKinesisStreamName(), other.activityStreamKinesisStreamName()) && Objects.equals(copyTagsToSnapshot(), other.copyTagsToSnapshot()) && Objects.equals(crossAccountClone(), other.crossAccountClone()) && hasDomainMemberships() == other.hasDomainMemberships() && Objects.equals(domainMemberships(), other.domainMemberships()) && hasTagList() == other.hasTagList() && Objects.equals(tagList(), other.tagList()) && Objects.equals(globalWriteForwardingStatusAsString(), other.globalWriteForwardingStatusAsString()) && Objects.equals(globalWriteForwardingRequested(), other.globalWriteForwardingRequested()) && Objects.equals(pendingModifiedValues(), other.pendingModifiedValues()) && Objects.equals(dbClusterInstanceClass(), other.dbClusterInstanceClass()) && Objects.equals(storageType(), other.storageType()) && Objects.equals(iops(), other.iops()) && Objects.equals(publiclyAccessible(), other.publiclyAccessible()) && Objects.equals(autoMinorVersionUpgrade(), other.autoMinorVersionUpgrade()) && Objects.equals(monitoringInterval(), other.monitoringInterval()) && Objects.equals(monitoringRoleArn(), other.monitoringRoleArn()) && Objects.equals(performanceInsightsEnabled(), other.performanceInsightsEnabled()) && Objects.equals(performanceInsightsKMSKeyId(), other.performanceInsightsKMSKeyId()) && Objects.equals(performanceInsightsRetentionPeriod(), other.performanceInsightsRetentionPeriod()) && Objects.equals(serverlessV2ScalingConfiguration(), other.serverlessV2ScalingConfiguration()) && Objects.equals(networkType(), other.networkType()) && Objects.equals(dbSystemId(), other.dbSystemId()) && Objects.equals(masterUserSecret(), other.masterUserSecret()) && Objects.equals(ioOptimizedNextAllowedModificationTime(), other.ioOptimizedNextAllowedModificationTime()) && Objects.equals(localWriteForwardingStatusAsString(), other.localWriteForwardingStatusAsString()) && Objects.equals(awsBackupRecoveryPointArn(), other.awsBackupRecoveryPointArn()); } /** * 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("DBCluster") .add("AllocatedStorage", allocatedStorage()) .add("AvailabilityZones", hasAvailabilityZones() ? availabilityZones() : null) .add("BackupRetentionPeriod", backupRetentionPeriod()) .add("CharacterSetName", characterSetName()) .add("DatabaseName", databaseName()) .add("DBClusterIdentifier", dbClusterIdentifier()) .add("DBClusterParameterGroup", dbClusterParameterGroup()) .add("DBSubnetGroup", dbSubnetGroup()) .add("Status", status()) .add("AutomaticRestartTime", automaticRestartTime()) .add("PercentProgress", percentProgress()) .add("EarliestRestorableTime", earliestRestorableTime()) .add("Endpoint", endpoint()) .add("ReaderEndpoint", readerEndpoint()) .add("CustomEndpoints", hasCustomEndpoints() ? customEndpoints() : null) .add("MultiAZ", multiAZ()) .add("Engine", engine()) .add("EngineVersion", engineVersion()) .add("LatestRestorableTime", latestRestorableTime()) .add("Port", port()) .add("MasterUsername", masterUsername()) .add("DBClusterOptionGroupMemberships", hasDbClusterOptionGroupMemberships() ? dbClusterOptionGroupMemberships() : null) .add("PreferredBackupWindow", preferredBackupWindow()) .add("PreferredMaintenanceWindow", preferredMaintenanceWindow()) .add("ReplicationSourceIdentifier", replicationSourceIdentifier()) .add("ReadReplicaIdentifiers", hasReadReplicaIdentifiers() ? readReplicaIdentifiers() : null) .add("DBClusterMembers", hasDbClusterMembers() ? dbClusterMembers() : null) .add("VpcSecurityGroups", hasVpcSecurityGroups() ? vpcSecurityGroups() : null) .add("HostedZoneId", hostedZoneId()).add("StorageEncrypted", storageEncrypted()).add("KmsKeyId", kmsKeyId()) .add("DbClusterResourceId", dbClusterResourceId()).add("DBClusterArn", dbClusterArn()) .add("AssociatedRoles", hasAssociatedRoles() ? associatedRoles() : null) .add("IAMDatabaseAuthenticationEnabled", iamDatabaseAuthenticationEnabled()).add("CloneGroupId", cloneGroupId()) .add("ClusterCreateTime", clusterCreateTime()).add("EarliestBacktrackTime", earliestBacktrackTime()) .add("BacktrackWindow", backtrackWindow()) .add("BacktrackConsumedChangeRecords", backtrackConsumedChangeRecords()) .add("EnabledCloudwatchLogsExports", hasEnabledCloudwatchLogsExports() ? enabledCloudwatchLogsExports() : null) .add("Capacity", capacity()).add("EngineMode", engineMode()) .add("ScalingConfigurationInfo", scalingConfigurationInfo()).add("DeletionProtection", deletionProtection()) .add("HttpEndpointEnabled", httpEndpointEnabled()).add("ActivityStreamMode", activityStreamModeAsString()) .add("ActivityStreamStatus", activityStreamStatusAsString()) .add("ActivityStreamKmsKeyId", activityStreamKmsKeyId()) .add("ActivityStreamKinesisStreamName", activityStreamKinesisStreamName()) .add("CopyTagsToSnapshot", copyTagsToSnapshot()).add("CrossAccountClone", crossAccountClone()) .add("DomainMemberships", hasDomainMemberships() ? domainMemberships() : null) .add("TagList", hasTagList() ? tagList() : null) .add("GlobalWriteForwardingStatus", globalWriteForwardingStatusAsString()) .add("GlobalWriteForwardingRequested", globalWriteForwardingRequested()) .add("PendingModifiedValues", pendingModifiedValues()).add("DBClusterInstanceClass", dbClusterInstanceClass()) .add("StorageType", storageType()).add("Iops", iops()).add("PubliclyAccessible", publiclyAccessible()) .add("AutoMinorVersionUpgrade", autoMinorVersionUpgrade()).add("MonitoringInterval", monitoringInterval()) .add("MonitoringRoleArn", monitoringRoleArn()).add("PerformanceInsightsEnabled", performanceInsightsEnabled()) .add("PerformanceInsightsKMSKeyId", performanceInsightsKMSKeyId()) .add("PerformanceInsightsRetentionPeriod", performanceInsightsRetentionPeriod()) .add("ServerlessV2ScalingConfiguration", serverlessV2ScalingConfiguration()).add("NetworkType", networkType()) .add("DBSystemId", dbSystemId()).add("MasterUserSecret", masterUserSecret()) .add("IOOptimizedNextAllowedModificationTime", ioOptimizedNextAllowedModificationTime()) .add("LocalWriteForwardingStatus", localWriteForwardingStatusAsString()) .add("AwsBackupRecoveryPointArn", awsBackupRecoveryPointArn()).build(); } public final Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "AllocatedStorage": return Optional.ofNullable(clazz.cast(allocatedStorage())); case "AvailabilityZones": return Optional.ofNullable(clazz.cast(availabilityZones())); case "BackupRetentionPeriod": return Optional.ofNullable(clazz.cast(backupRetentionPeriod())); case "CharacterSetName": return Optional.ofNullable(clazz.cast(characterSetName())); case "DatabaseName": return Optional.ofNullable(clazz.cast(databaseName())); case "DBClusterIdentifier": return Optional.ofNullable(clazz.cast(dbClusterIdentifier())); case "DBClusterParameterGroup": return Optional.ofNullable(clazz.cast(dbClusterParameterGroup())); case "DBSubnetGroup": return Optional.ofNullable(clazz.cast(dbSubnetGroup())); case "Status": return Optional.ofNullable(clazz.cast(status())); case "AutomaticRestartTime": return Optional.ofNullable(clazz.cast(automaticRestartTime())); case "PercentProgress": return Optional.ofNullable(clazz.cast(percentProgress())); case "EarliestRestorableTime": return Optional.ofNullable(clazz.cast(earliestRestorableTime())); case "Endpoint": return Optional.ofNullable(clazz.cast(endpoint())); case "ReaderEndpoint": return Optional.ofNullable(clazz.cast(readerEndpoint())); case "CustomEndpoints": return Optional.ofNullable(clazz.cast(customEndpoints())); case "MultiAZ": return Optional.ofNullable(clazz.cast(multiAZ())); case "Engine": return Optional.ofNullable(clazz.cast(engine())); case "EngineVersion": return Optional.ofNullable(clazz.cast(engineVersion())); case "LatestRestorableTime": return Optional.ofNullable(clazz.cast(latestRestorableTime())); case "Port": return Optional.ofNullable(clazz.cast(port())); case "MasterUsername": return Optional.ofNullable(clazz.cast(masterUsername())); case "DBClusterOptionGroupMemberships": return Optional.ofNullable(clazz.cast(dbClusterOptionGroupMemberships())); case "PreferredBackupWindow": return Optional.ofNullable(clazz.cast(preferredBackupWindow())); case "PreferredMaintenanceWindow": return Optional.ofNullable(clazz.cast(preferredMaintenanceWindow())); case "ReplicationSourceIdentifier": return Optional.ofNullable(clazz.cast(replicationSourceIdentifier())); case "ReadReplicaIdentifiers": return Optional.ofNullable(clazz.cast(readReplicaIdentifiers())); case "DBClusterMembers": return Optional.ofNullable(clazz.cast(dbClusterMembers())); case "VpcSecurityGroups": return Optional.ofNullable(clazz.cast(vpcSecurityGroups())); case "HostedZoneId": return Optional.ofNullable(clazz.cast(hostedZoneId())); case "StorageEncrypted": return Optional.ofNullable(clazz.cast(storageEncrypted())); case "KmsKeyId": return Optional.ofNullable(clazz.cast(kmsKeyId())); case "DbClusterResourceId": return Optional.ofNullable(clazz.cast(dbClusterResourceId())); case "DBClusterArn": return Optional.ofNullable(clazz.cast(dbClusterArn())); case "AssociatedRoles": return Optional.ofNullable(clazz.cast(associatedRoles())); case "IAMDatabaseAuthenticationEnabled": return Optional.ofNullable(clazz.cast(iamDatabaseAuthenticationEnabled())); case "CloneGroupId": return Optional.ofNullable(clazz.cast(cloneGroupId())); case "ClusterCreateTime": return Optional.ofNullable(clazz.cast(clusterCreateTime())); case "EarliestBacktrackTime": return Optional.ofNullable(clazz.cast(earliestBacktrackTime())); case "BacktrackWindow": return Optional.ofNullable(clazz.cast(backtrackWindow())); case "BacktrackConsumedChangeRecords": return Optional.ofNullable(clazz.cast(backtrackConsumedChangeRecords())); case "EnabledCloudwatchLogsExports": return Optional.ofNullable(clazz.cast(enabledCloudwatchLogsExports())); case "Capacity": return Optional.ofNullable(clazz.cast(capacity())); case "EngineMode": return Optional.ofNullable(clazz.cast(engineMode())); case "ScalingConfigurationInfo": return Optional.ofNullable(clazz.cast(scalingConfigurationInfo())); case "DeletionProtection": return Optional.ofNullable(clazz.cast(deletionProtection())); case "HttpEndpointEnabled": return Optional.ofNullable(clazz.cast(httpEndpointEnabled())); case "ActivityStreamMode": return Optional.ofNullable(clazz.cast(activityStreamModeAsString())); 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 "CopyTagsToSnapshot": return Optional.ofNullable(clazz.cast(copyTagsToSnapshot())); case "CrossAccountClone": return Optional.ofNullable(clazz.cast(crossAccountClone())); case "DomainMemberships": return Optional.ofNullable(clazz.cast(domainMemberships())); case "TagList": return Optional.ofNullable(clazz.cast(tagList())); case "GlobalWriteForwardingStatus": return Optional.ofNullable(clazz.cast(globalWriteForwardingStatusAsString())); case "GlobalWriteForwardingRequested": return Optional.ofNullable(clazz.cast(globalWriteForwardingRequested())); case "PendingModifiedValues": return Optional.ofNullable(clazz.cast(pendingModifiedValues())); case "DBClusterInstanceClass": return Optional.ofNullable(clazz.cast(dbClusterInstanceClass())); case "StorageType": return Optional.ofNullable(clazz.cast(storageType())); case "Iops": return Optional.ofNullable(clazz.cast(iops())); case "PubliclyAccessible": return Optional.ofNullable(clazz.cast(publiclyAccessible())); case "AutoMinorVersionUpgrade": return Optional.ofNullable(clazz.cast(autoMinorVersionUpgrade())); case "MonitoringInterval": return Optional.ofNullable(clazz.cast(monitoringInterval())); case "MonitoringRoleArn": return Optional.ofNullable(clazz.cast(monitoringRoleArn())); 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 "ServerlessV2ScalingConfiguration": return Optional.ofNullable(clazz.cast(serverlessV2ScalingConfiguration())); case "NetworkType": return Optional.ofNullable(clazz.cast(networkType())); case "DBSystemId": return Optional.ofNullable(clazz.cast(dbSystemId())); case "MasterUserSecret": return Optional.ofNullable(clazz.cast(masterUserSecret())); case "IOOptimizedNextAllowedModificationTime": return Optional.ofNullable(clazz.cast(ioOptimizedNextAllowedModificationTime())); case "LocalWriteForwardingStatus": return Optional.ofNullable(clazz.cast(localWriteForwardingStatusAsString())); case "AwsBackupRecoveryPointArn": return Optional.ofNullable(clazz.cast(awsBackupRecoveryPointArn())); default: return Optional.empty(); } } @Override public final List> sdkFields() { return SDK_FIELDS; } private static Function getter(Function g) { return obj -> g.apply((DBCluster) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends SdkPojo, CopyableBuilder { /** *

* For all database engines except Amazon Aurora, AllocatedStorage specifies the allocated storage * size in gibibytes (GiB). For Aurora, AllocatedStorage always returns 1, because Aurora DB * cluster storage size isn't fixed, but instead automatically adjusts as needed. *

* * @param allocatedStorage * For all database engines except Amazon Aurora, AllocatedStorage specifies the allocated * storage size in gibibytes (GiB). For Aurora, AllocatedStorage always returns 1, because * Aurora DB cluster storage size isn't fixed, but instead automatically adjusts as needed. * @return Returns a reference to this object so that method calls can be chained together. */ Builder allocatedStorage(Integer allocatedStorage); /** *

* The list of Availability Zones (AZs) where instances in the DB cluster can be created. *

* * @param availabilityZones * The list of Availability Zones (AZs) where instances in the DB cluster can be created. * @return Returns a reference to this object so that method calls can be chained together. */ Builder availabilityZones(Collection availabilityZones); /** *

* The list of Availability Zones (AZs) where instances in the DB cluster can be created. *

* * @param availabilityZones * The list of Availability Zones (AZs) where instances in the DB cluster can be created. * @return Returns a reference to this object so that method calls can be chained together. */ Builder availabilityZones(String... availabilityZones); /** *

* The number of days for which automatic DB snapshots are retained. *

* * @param backupRetentionPeriod * The number of days for which automatic DB snapshots are retained. * @return Returns a reference to this object so that method calls can be chained together. */ Builder backupRetentionPeriod(Integer backupRetentionPeriod); /** *

* If present, specifies the name of the character set that this cluster is associated with. *

* * @param characterSetName * If present, specifies the name of the character set that this cluster is associated with. * @return Returns a reference to this object so that method calls can be chained together. */ Builder characterSetName(String characterSetName); /** *

* The name of the initial database that was specified for the DB cluster when it was created, if one was * provided. This same name is returned for the life of the DB cluster. *

* * @param databaseName * The name of the initial database that was specified for the DB cluster when it was created, if one was * provided. This same name is returned for the life of the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder databaseName(String databaseName); /** *

* The user-supplied identifier for the DB cluster. This identifier is the unique key that identifies a DB * cluster. *

* * @param dbClusterIdentifier * The user-supplied identifier for the DB cluster. This identifier is the unique key that identifies a * DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterIdentifier(String dbClusterIdentifier); /** *

* The name of the DB cluster parameter group for the DB cluster. *

* * @param dbClusterParameterGroup * The name of the DB cluster parameter group for the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterParameterGroup(String dbClusterParameterGroup); /** *

* Information about the subnet group associated with the DB cluster, including the name, description, and * subnets in the subnet group. *

* * @param dbSubnetGroup * Information about the subnet group associated with the DB cluster, including the name, description, * and subnets in the subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbSubnetGroup(String dbSubnetGroup); /** *

* The current state of this DB cluster. *

* * @param status * The current state of this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder status(String status); /** *

* The time when a stopped DB cluster is restarted automatically. *

* * @param automaticRestartTime * The time when a stopped DB cluster is restarted automatically. * @return Returns a reference to this object so that method calls can be chained together. */ Builder automaticRestartTime(Instant automaticRestartTime); /** *

* The progress of the operation as a percentage. *

* * @param percentProgress * The progress of the operation as a percentage. * @return Returns a reference to this object so that method calls can be chained together. */ Builder percentProgress(String percentProgress); /** *

* The earliest time to which a database can be restored with point-in-time restore. *

* * @param earliestRestorableTime * The earliest time to which a database can be restored with point-in-time restore. * @return Returns a reference to this object so that method calls can be chained together. */ Builder earliestRestorableTime(Instant earliestRestorableTime); /** *

* The connection endpoint for the primary instance of the DB cluster. *

* * @param endpoint * The connection endpoint for the primary instance of the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder endpoint(String endpoint); /** *

* The reader endpoint for the DB cluster. The reader endpoint for a DB cluster load-balances connections across * the Aurora Replicas that are available in a DB cluster. As clients request new connections to the reader * endpoint, Aurora distributes the connection requests among the Aurora Replicas in the DB cluster. This * functionality can help balance your read workload across multiple Aurora Replicas in your DB cluster. *

*

* If a failover occurs, and the Aurora Replica that you are connected to is promoted to be the primary * instance, your connection is dropped. To continue sending your read workload to other Aurora Replicas in the * cluster, you can then reconnect to the reader endpoint. *

* * @param readerEndpoint * The reader endpoint for the DB cluster. The reader endpoint for a DB cluster load-balances connections * across the Aurora Replicas that are available in a DB cluster. As clients request new connections to * the reader endpoint, Aurora distributes the connection requests among the Aurora Replicas in the DB * cluster. This functionality can help balance your read workload across multiple Aurora Replicas in * your DB cluster.

*

* If a failover occurs, and the Aurora Replica that you are connected to is promoted to be the primary * instance, your connection is dropped. To continue sending your read workload to other Aurora Replicas * in the cluster, you can then reconnect to the reader endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder readerEndpoint(String readerEndpoint); /** *

* The custom endpoints associated with the DB cluster. *

* * @param customEndpoints * The custom endpoints associated with the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder customEndpoints(Collection customEndpoints); /** *

* The custom endpoints associated with the DB cluster. *

* * @param customEndpoints * The custom endpoints associated with the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder customEndpoints(String... customEndpoints); /** *

* Indicates whether the DB cluster has instances in multiple Availability Zones. *

* * @param multiAZ * Indicates whether the DB cluster has instances in multiple Availability Zones. * @return Returns a reference to this object so that method calls can be chained together. */ Builder multiAZ(Boolean multiAZ); /** *

* The database engine used for this DB cluster. *

* * @param engine * The database engine used for this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder engine(String engine); /** *

* The version of the database engine. *

* * @param engineVersion * The version of the database engine. * @return Returns a reference to this object so that method calls can be chained together. */ Builder engineVersion(String engineVersion); /** *

* The latest time to which a database can be restored with point-in-time restore. *

* * @param latestRestorableTime * The latest time to which a database can be restored with point-in-time restore. * @return Returns a reference to this object so that method calls can be chained together. */ Builder latestRestorableTime(Instant latestRestorableTime); /** *

* The port that the database engine is listening on. *

* * @param port * The port that the database engine is listening on. * @return Returns a reference to this object so that method calls can be chained together. */ Builder port(Integer port); /** *

* The master username for the DB cluster. *

* * @param masterUsername * The master username for the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder masterUsername(String masterUsername); /** *

* The list of option group memberships for this DB cluster. *

* * @param dbClusterOptionGroupMemberships * The list of option group memberships for this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterOptionGroupMemberships(Collection dbClusterOptionGroupMemberships); /** *

* The list of option group memberships for this DB cluster. *

* * @param dbClusterOptionGroupMemberships * The list of option group memberships for this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterOptionGroupMemberships(DBClusterOptionGroupStatus... dbClusterOptionGroupMemberships); /** *

* The list of option group memberships for this DB cluster. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.DBClusterOptionGroupStatus.Builder} avoiding the need to * create one manually via * {@link software.amazon.awssdk.services.rds.model.DBClusterOptionGroupStatus#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.rds.model.DBClusterOptionGroupStatus.Builder#build()} is called * immediately and its result is passed to {@link * #dbClusterOptionGroupMemberships(List)}. * * @param dbClusterOptionGroupMemberships * a consumer that will call methods on * {@link software.amazon.awssdk.services.rds.model.DBClusterOptionGroupStatus.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #dbClusterOptionGroupMemberships(java.util.Collection) */ Builder dbClusterOptionGroupMemberships(Consumer... dbClusterOptionGroupMemberships); /** *

* The daily time range during which automated backups are created if automated backups are enabled, as * determined by the BackupRetentionPeriod. *

* * @param preferredBackupWindow * The daily time range during which automated backups are created if automated backups are enabled, as * determined by the BackupRetentionPeriod. * @return Returns a reference to this object so that method calls can be chained together. */ Builder preferredBackupWindow(String preferredBackupWindow); /** *

* The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *

* * @param preferredMaintenanceWindow * The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). * @return Returns a reference to this object so that method calls can be chained together. */ Builder preferredMaintenanceWindow(String preferredMaintenanceWindow); /** *

* The identifier of the source DB cluster if this DB cluster is a read replica. *

* * @param replicationSourceIdentifier * The identifier of the source DB cluster if this DB cluster is a read replica. * @return Returns a reference to this object so that method calls can be chained together. */ Builder replicationSourceIdentifier(String replicationSourceIdentifier); /** *

* Contains one or more identifiers of the read replicas associated with this DB cluster. *

* * @param readReplicaIdentifiers * Contains one or more identifiers of the read replicas associated with this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder readReplicaIdentifiers(Collection readReplicaIdentifiers); /** *

* Contains one or more identifiers of the read replicas associated with this DB cluster. *

* * @param readReplicaIdentifiers * Contains one or more identifiers of the read replicas associated with this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder readReplicaIdentifiers(String... readReplicaIdentifiers); /** *

* The list of DB instances that make up the DB cluster. *

* * @param dbClusterMembers * The list of DB instances that make up the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterMembers(Collection dbClusterMembers); /** *

* The list of DB instances that make up the DB cluster. *

* * @param dbClusterMembers * The list of DB instances that make up the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterMembers(DBClusterMember... dbClusterMembers); /** *

* The list of DB instances that make up the DB cluster. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.DBClusterMember.Builder} avoiding the need to create one * manually via {@link software.amazon.awssdk.services.rds.model.DBClusterMember#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.rds.model.DBClusterMember.Builder#build()} is called immediately and * its result is passed to {@link #dbClusterMembers(List)}. * * @param dbClusterMembers * a consumer that will call methods on * {@link software.amazon.awssdk.services.rds.model.DBClusterMember.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #dbClusterMembers(java.util.Collection) */ Builder dbClusterMembers(Consumer... dbClusterMembers); /** *

* The list of VPC security groups that the DB cluster belongs to. *

* * @param vpcSecurityGroups * The list of VPC security groups that the DB cluster belongs to. * @return Returns a reference to this object so that method calls can be chained together. */ Builder vpcSecurityGroups(Collection vpcSecurityGroups); /** *

* The list of VPC security groups that the DB cluster belongs to. *

* * @param vpcSecurityGroups * The list of VPC security groups that the DB cluster belongs to. * @return Returns a reference to this object so that method calls can be chained together. */ Builder vpcSecurityGroups(VpcSecurityGroupMembership... vpcSecurityGroups); /** *

* The list of VPC security groups that the DB cluster belongs to. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.VpcSecurityGroupMembership.Builder} avoiding the need to * create one manually via * {@link software.amazon.awssdk.services.rds.model.VpcSecurityGroupMembership#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.rds.model.VpcSecurityGroupMembership.Builder#build()} is called * immediately and its result is passed to {@link #vpcSecurityGroups(List)}. * * @param vpcSecurityGroups * a consumer that will call methods on * {@link software.amazon.awssdk.services.rds.model.VpcSecurityGroupMembership.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #vpcSecurityGroups(java.util.Collection) */ Builder vpcSecurityGroups(Consumer... vpcSecurityGroups); /** *

* The ID that Amazon Route 53 assigns when you create a hosted zone. *

* * @param hostedZoneId * The ID that Amazon Route 53 assigns when you create a hosted zone. * @return Returns a reference to this object so that method calls can be chained together. */ Builder hostedZoneId(String hostedZoneId); /** *

* Indicates whether the DB cluster is encrypted. *

* * @param storageEncrypted * Indicates whether the DB cluster is encrypted. * @return Returns a reference to this object so that method calls can be chained together. */ Builder storageEncrypted(Boolean storageEncrypted); /** *

* If StorageEncrypted is enabled, the Amazon Web Services KMS key identifier for the encrypted DB * cluster. *

*

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

* * @param kmsKeyId * If StorageEncrypted is enabled, the Amazon Web Services KMS key identifier for the * encrypted DB cluster.

*

* The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the * KMS key. * @return Returns a reference to this object so that method calls can be chained together. */ Builder kmsKeyId(String kmsKeyId); /** *

* The Amazon Web Services Region-unique, immutable identifier for the DB cluster. This identifier is found in * Amazon Web Services CloudTrail log entries whenever the KMS key for the DB cluster is accessed. *

* * @param dbClusterResourceId * The Amazon Web Services Region-unique, immutable identifier for the DB cluster. This identifier is * found in Amazon Web Services CloudTrail log entries whenever the KMS key for the DB cluster is * accessed. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterResourceId(String dbClusterResourceId); /** *

* The Amazon Resource Name (ARN) for the DB cluster. *

* * @param dbClusterArn * The Amazon Resource Name (ARN) for the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterArn(String dbClusterArn); /** *

* A list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with the DB * cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other * Amazon Web Services on your behalf. *

* * @param associatedRoles * A list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with * the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to * access other Amazon Web Services on your behalf. * @return Returns a reference to this object so that method calls can be chained together. */ Builder associatedRoles(Collection associatedRoles); /** *

* A list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with the DB * cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other * Amazon Web Services on your behalf. *

* * @param associatedRoles * A list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with * the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to * access other Amazon Web Services on your behalf. * @return Returns a reference to this object so that method calls can be chained together. */ Builder associatedRoles(DBClusterRole... associatedRoles); /** *

* A list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with the DB * cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other * Amazon Web Services on your behalf. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.DBClusterRole.Builder} avoiding the need to create one * manually via {@link software.amazon.awssdk.services.rds.model.DBClusterRole#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.rds.model.DBClusterRole.Builder#build()} is called immediately and its * result is passed to {@link #associatedRoles(List)}. * * @param associatedRoles * a consumer that will call methods on * {@link software.amazon.awssdk.services.rds.model.DBClusterRole.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #associatedRoles(java.util.Collection) */ Builder associatedRoles(Consumer... associatedRoles); /** *

* Indicates whether the mapping of Amazon Web Services Identity and Access Management (IAM) accounts to * database accounts is enabled. *

* * @param iamDatabaseAuthenticationEnabled * Indicates whether the mapping of Amazon Web Services Identity and Access Management (IAM) accounts to * database accounts is enabled. * @return Returns a reference to this object so that method calls can be chained together. */ Builder iamDatabaseAuthenticationEnabled(Boolean iamDatabaseAuthenticationEnabled); /** *

* The ID of the clone group with which the DB cluster is associated. *

* * @param cloneGroupId * The ID of the clone group with which the DB cluster is associated. * @return Returns a reference to this object so that method calls can be chained together. */ Builder cloneGroupId(String cloneGroupId); /** *

* The time when the DB cluster was created, in Universal Coordinated Time (UTC). *

* * @param clusterCreateTime * The time when the DB cluster was created, in Universal Coordinated Time (UTC). * @return Returns a reference to this object so that method calls can be chained together. */ Builder clusterCreateTime(Instant clusterCreateTime); /** *

* The earliest time to which a DB cluster can be backtracked. *

* * @param earliestBacktrackTime * The earliest time to which a DB cluster can be backtracked. * @return Returns a reference to this object so that method calls can be chained together. */ Builder earliestBacktrackTime(Instant earliestBacktrackTime); /** *

* The target backtrack window, in seconds. If this value is set to 0, backtracking is disabled for * the DB cluster. Otherwise, backtracking is enabled. *

* * @param backtrackWindow * The target backtrack window, in seconds. If this value is set to 0, backtracking is * disabled for the DB cluster. Otherwise, backtracking is enabled. * @return Returns a reference to this object so that method calls can be chained together. */ Builder backtrackWindow(Long backtrackWindow); /** *

* The number of change records stored for Backtrack. *

* * @param backtrackConsumedChangeRecords * The number of change records stored for Backtrack. * @return Returns a reference to this object so that method calls can be chained together. */ Builder backtrackConsumedChangeRecords(Long backtrackConsumedChangeRecords); /** *

* A list of log types that this DB cluster is configured to export to CloudWatch Logs. *

*

* Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS Database * Log Files in the Amazon Aurora User Guide. *

* * @param enabledCloudwatchLogsExports * A list of log types that this DB cluster is configured to export to CloudWatch Logs.

*

* Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS * Database Log Files in the Amazon Aurora User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder enabledCloudwatchLogsExports(Collection enabledCloudwatchLogsExports); /** *

* A list of log types that this DB cluster is configured to export to CloudWatch Logs. *

*

* Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS Database * Log Files in the Amazon Aurora User Guide. *

* * @param enabledCloudwatchLogsExports * A list of log types that this DB cluster is configured to export to CloudWatch Logs.

*

* Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS * Database Log Files in the Amazon Aurora User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder enabledCloudwatchLogsExports(String... enabledCloudwatchLogsExports); /** *

* The current capacity of an Aurora Serverless v1 DB cluster. The capacity is 0 (zero) when the * cluster is paused. *

*

* For more information about Aurora Serverless v1, see Using Amazon * Aurora Serverless v1 in the Amazon Aurora User Guide. *

* * @param capacity * The current capacity of an Aurora Serverless v1 DB cluster. The capacity is 0 (zero) when * the cluster is paused.

*

* For more information about Aurora Serverless v1, see Using * Amazon Aurora Serverless v1 in the Amazon Aurora User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder capacity(Integer capacity); /** *

* The DB engine mode of the DB cluster, either provisioned or serverless. *

*

* For more information, see * CreateDBCluster. *

* * @param engineMode * The DB engine mode of the DB cluster, either provisioned or serverless.

*

* For more information, see * CreateDBCluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder engineMode(String engineMode); /** * Sets the value of the ScalingConfigurationInfo property for this object. * * @param scalingConfigurationInfo * The new value for the ScalingConfigurationInfo property for this object. * @return Returns a reference to this object so that method calls can be chained together. */ Builder scalingConfigurationInfo(ScalingConfigurationInfo scalingConfigurationInfo); /** * Sets the value of the ScalingConfigurationInfo property for this object. * * This is a convenience method that creates an instance of the {@link ScalingConfigurationInfo.Builder} * avoiding the need to create one manually via {@link ScalingConfigurationInfo#builder()}. * *

* When the {@link Consumer} completes, {@link ScalingConfigurationInfo.Builder#build()} is called immediately * and its result is passed to {@link #scalingConfigurationInfo(ScalingConfigurationInfo)}. * * @param scalingConfigurationInfo * a consumer that will call methods on {@link ScalingConfigurationInfo.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #scalingConfigurationInfo(ScalingConfigurationInfo) */ default Builder scalingConfigurationInfo(Consumer scalingConfigurationInfo) { return scalingConfigurationInfo(ScalingConfigurationInfo.builder().applyMutation(scalingConfigurationInfo).build()); } /** *

* Indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion * protection is enabled. *

* * @param deletionProtection * Indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. * @return Returns a reference to this object so that method calls can be chained together. */ Builder deletionProtection(Boolean deletionProtection); /** *

* Indicates whether the HTTP endpoint for an Aurora Serverless v1 DB cluster is enabled. *

*

* When enabled, the HTTP endpoint provides a connectionless web service API for running SQL queries on the * Aurora Serverless v1 DB cluster. You can also query your database from inside the RDS console with the query * editor. *

*

* For more information, see Using the Data API for * Aurora Serverless v1 in the Amazon Aurora User Guide. *

* * @param httpEndpointEnabled * Indicates whether the HTTP endpoint for an Aurora Serverless v1 DB cluster is enabled.

*

* When enabled, the HTTP endpoint provides a connectionless web service API for running SQL queries on * the Aurora Serverless v1 DB cluster. You can also query your database from inside the RDS console with * the query editor. *

*

* For more information, see Using the Data API * for Aurora Serverless v1 in the Amazon Aurora User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder httpEndpointEnabled(Boolean httpEndpointEnabled); /** *

* The mode of the database activity stream. Database events such as a change or access generate an activity * stream event. The database session can handle these events either synchronously or asynchronously. *

* * @param activityStreamMode * The mode of the database activity stream. Database events such as a change or access generate an * activity stream event. The database session can handle these events either synchronously or * asynchronously. * @see ActivityStreamMode * @return Returns a reference to this object so that method calls can be chained together. * @see ActivityStreamMode */ Builder activityStreamMode(String activityStreamMode); /** *

* The mode of the database activity stream. Database events such as a change or access generate an activity * stream event. The database session can handle these events either synchronously or asynchronously. *

* * @param activityStreamMode * The mode of the database activity stream. Database events such as a change or access generate an * activity stream event. The database session can handle these events either synchronously or * asynchronously. * @see ActivityStreamMode * @return Returns a reference to this object so that method calls can be chained together. * @see ActivityStreamMode */ Builder activityStreamMode(ActivityStreamMode activityStreamMode); /** *

* The status of the database activity stream. *

* * @param activityStreamStatus * The status of the database activity stream. * @see ActivityStreamStatus * @return Returns a reference to this object so that method calls can be chained together. * @see ActivityStreamStatus */ Builder activityStreamStatus(String activityStreamStatus); /** *

* The status of the database activity stream. *

* * @param activityStreamStatus * The status of the database activity stream. * @see ActivityStreamStatus * @return Returns a reference to this object so that method calls can be chained together. * @see ActivityStreamStatus */ Builder activityStreamStatus(ActivityStreamStatus 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. *

* * @param activityStreamKmsKeyId * 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 Returns a reference to this object so that method calls can be chained together. */ Builder activityStreamKmsKeyId(String activityStreamKmsKeyId); /** *

* The name of the Amazon Kinesis data stream used for the database activity stream. *

* * @param activityStreamKinesisStreamName * The name of the Amazon Kinesis data stream used for the database activity stream. * @return Returns a reference to this object so that method calls can be chained together. */ Builder activityStreamKinesisStreamName(String activityStreamKinesisStreamName); /** *

* Indicates whether tags are copied from the DB cluster to snapshots of the DB cluster. *

* * @param copyTagsToSnapshot * Indicates whether tags are copied from the DB cluster to snapshots of the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder copyTagsToSnapshot(Boolean copyTagsToSnapshot); /** *

* Indicates whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account. *

* * @param crossAccountClone * Indicates whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services * account. * @return Returns a reference to this object so that method calls can be chained together. */ Builder crossAccountClone(Boolean crossAccountClone); /** *

* The Active Directory Domain membership records associated with the DB cluster. *

* * @param domainMemberships * The Active Directory Domain membership records associated with the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainMemberships(Collection domainMemberships); /** *

* The Active Directory Domain membership records associated with the DB cluster. *

* * @param domainMemberships * The Active Directory Domain membership records associated with the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainMemberships(DomainMembership... domainMemberships); /** *

* The Active Directory Domain membership records associated with the DB cluster. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.DomainMembership.Builder} avoiding the need to create one * manually via {@link software.amazon.awssdk.services.rds.model.DomainMembership#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.rds.model.DomainMembership.Builder#build()} is called immediately and * its result is passed to {@link #domainMemberships(List)}. * * @param domainMemberships * a consumer that will call methods on * {@link software.amazon.awssdk.services.rds.model.DomainMembership.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #domainMemberships(java.util.Collection) */ Builder domainMemberships(Consumer... domainMemberships); /** * Sets the value of the TagList property for this object. * * @param tagList * The new value for the TagList property for this object. * @return Returns a reference to this object so that method calls can be chained together. */ Builder tagList(Collection tagList); /** * Sets the value of the TagList property for this object. * * @param tagList * The new value for the TagList property for this object. * @return Returns a reference to this object so that method calls can be chained together. */ Builder tagList(Tag... tagList); /** * Sets the value of the TagList property for this object. * * This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.rds.model.Tag.Builder} avoiding the need to create one manually via * {@link software.amazon.awssdk.services.rds.model.Tag#builder()}. * *

* When the {@link Consumer} completes, {@link software.amazon.awssdk.services.rds.model.Tag.Builder#build()} is * called immediately and its result is passed to {@link #tagList(List)}. * * @param tagList * a consumer that will call methods on {@link software.amazon.awssdk.services.rds.model.Tag.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #tagList(java.util.Collection) */ Builder tagList(Consumer... tagList); /** *

* The status of write forwarding for a secondary cluster in an Aurora global database. *

* * @param globalWriteForwardingStatus * The status of write forwarding for a secondary cluster in an Aurora global database. * @see WriteForwardingStatus * @return Returns a reference to this object so that method calls can be chained together. * @see WriteForwardingStatus */ Builder globalWriteForwardingStatus(String globalWriteForwardingStatus); /** *

* The status of write forwarding for a secondary cluster in an Aurora global database. *

* * @param globalWriteForwardingStatus * The status of write forwarding for a secondary cluster in an Aurora global database. * @see WriteForwardingStatus * @return Returns a reference to this object so that method calls can be chained together. * @see WriteForwardingStatus */ Builder globalWriteForwardingStatus(WriteForwardingStatus globalWriteForwardingStatus); /** *

* Specifies whether write forwarding is enabled for a secondary cluster in an Aurora global database. Because * write forwarding takes time to enable, check the value of GlobalWriteForwardingStatus to confirm * that the request has completed before using the write forwarding feature for this cluster. *

* * @param globalWriteForwardingRequested * Specifies whether write forwarding is enabled for a secondary cluster in an Aurora global database. * Because write forwarding takes time to enable, check the value of * GlobalWriteForwardingStatus to confirm that the request has completed before using the * write forwarding feature for this cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder globalWriteForwardingRequested(Boolean globalWriteForwardingRequested); /** *

* Information about pending changes to the DB cluster. This information is returned only when there are pending * changes. Specific changes are identified by subelements. *

* * @param pendingModifiedValues * Information about pending changes to the DB cluster. This information is returned only when there are * pending changes. Specific changes are identified by subelements. * @return Returns a reference to this object so that method calls can be chained together. */ Builder pendingModifiedValues(ClusterPendingModifiedValues pendingModifiedValues); /** *

* Information about pending changes to the DB cluster. This information is returned only when there are pending * changes. Specific changes are identified by subelements. *

* This is a convenience method that creates an instance of the {@link ClusterPendingModifiedValues.Builder} * avoiding the need to create one manually via {@link ClusterPendingModifiedValues#builder()}. * *

* When the {@link Consumer} completes, {@link ClusterPendingModifiedValues.Builder#build()} is called * immediately and its result is passed to {@link #pendingModifiedValues(ClusterPendingModifiedValues)}. * * @param pendingModifiedValues * a consumer that will call methods on {@link ClusterPendingModifiedValues.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #pendingModifiedValues(ClusterPendingModifiedValues) */ default Builder pendingModifiedValues(Consumer pendingModifiedValues) { return pendingModifiedValues(ClusterPendingModifiedValues.builder().applyMutation(pendingModifiedValues).build()); } /** *

* The name of the compute and memory capacity class of the DB instance. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @param dbClusterInstanceClass * The name of the compute and memory capacity class of the DB instance.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterInstanceClass(String dbClusterInstanceClass); /** *

* The storage type associated with the DB cluster. *

* * @param storageType * The storage type associated with the DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder storageType(String storageType); /** *

* The Provisioned IOPS (I/O operations per second) value. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @param iops * The Provisioned IOPS (I/O operations per second) value.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder iops(Integer iops); /** *

* Indicates whether the DB cluster 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 cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves to * a private IP address. *

*

* For more information, see CreateDBCluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @param publiclyAccessible * Indicates whether the DB cluster 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 cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that * resolves to a private IP address. *

*

* For more information, see CreateDBCluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder publiclyAccessible(Boolean publiclyAccessible); /** *

* Indicates whether minor version patches are applied automatically. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @param autoMinorVersionUpgrade * Indicates whether minor version patches are applied automatically.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder autoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade); /** *

* The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @param monitoringInterval * The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB * cluster.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder monitoringInterval(Integer monitoringInterval); /** *

* The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @param monitoringRoleArn * The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch * Logs.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder monitoringRoleArn(String monitoringRoleArn); /** *

* Indicates whether Performance Insights is enabled for the DB cluster. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

* * @param performanceInsightsEnabled * Indicates whether Performance Insights is enabled for the DB cluster.

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder performanceInsightsEnabled(Boolean 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. *

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

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

*

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

*

* This setting is only for non-Aurora Multi-AZ DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder performanceInsightsKMSKeyId(String performanceInsightsKMSKeyId); /** *

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

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

*

* 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 *

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

*

* This setting is only for non-Aurora Multi-AZ DB clusters. *

*

* 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 Returns a reference to this object so that method calls can be chained together. */ Builder performanceInsightsRetentionPeriod(Integer performanceInsightsRetentionPeriod); /** * Sets the value of the ServerlessV2ScalingConfiguration property for this object. * * @param serverlessV2ScalingConfiguration * The new value for the ServerlessV2ScalingConfiguration property for this object. * @return Returns a reference to this object so that method calls can be chained together. */ Builder serverlessV2ScalingConfiguration(ServerlessV2ScalingConfigurationInfo serverlessV2ScalingConfiguration); /** * Sets the value of the ServerlessV2ScalingConfiguration property for this object. * * This is a convenience method that creates an instance of the * {@link ServerlessV2ScalingConfigurationInfo.Builder} avoiding the need to create one manually via * {@link ServerlessV2ScalingConfigurationInfo#builder()}. * *

* When the {@link Consumer} completes, {@link ServerlessV2ScalingConfigurationInfo.Builder#build()} is called * immediately and its result is passed to * {@link #serverlessV2ScalingConfiguration(ServerlessV2ScalingConfigurationInfo)}. * * @param serverlessV2ScalingConfiguration * a consumer that will call methods on {@link ServerlessV2ScalingConfigurationInfo.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #serverlessV2ScalingConfiguration(ServerlessV2ScalingConfigurationInfo) */ default Builder serverlessV2ScalingConfiguration( Consumer serverlessV2ScalingConfiguration) { return serverlessV2ScalingConfiguration(ServerlessV2ScalingConfigurationInfo.builder() .applyMutation(serverlessV2ScalingConfiguration).build()); } /** *

* The network type of the DB instance. *

*

* The network type is determined by the DBSubnetGroup specified for the DB cluster. 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 Aurora User Guide. *

*

* This setting is only for Aurora DB clusters. *

*

* Valid Values: IPV4 | DUAL *

* * @param networkType * The network type of the DB instance.

*

* The network type is determined by the DBSubnetGroup specified for the DB cluster. 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 Aurora User Guide. *

*

* This setting is only for Aurora DB clusters. *

*

* Valid Values: IPV4 | DUAL * @return Returns a reference to this object so that method calls can be chained together. */ Builder networkType(String networkType); /** *

* Reserved for future use. *

* * @param dbSystemId * Reserved for future use. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbSystemId(String 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 and Password * management with Amazon Web Services Secrets Manager in the Amazon Aurora User Guide. *

* * @param masterUserSecret * 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 and Password * management with Amazon Web Services Secrets Manager in the Amazon Aurora User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ Builder masterUserSecret(MasterUserSecret masterUserSecret); /** *

* 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 and Password * management with Amazon Web Services Secrets Manager in the Amazon Aurora User Guide. *

* This is a convenience method that creates an instance of the {@link MasterUserSecret.Builder} avoiding the * need to create one manually via {@link MasterUserSecret#builder()}. * *

* When the {@link Consumer} completes, {@link MasterUserSecret.Builder#build()} is called immediately and its * result is passed to {@link #masterUserSecret(MasterUserSecret)}. * * @param masterUserSecret * a consumer that will call methods on {@link MasterUserSecret.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #masterUserSecret(MasterUserSecret) */ default Builder masterUserSecret(Consumer masterUserSecret) { return masterUserSecret(MasterUserSecret.builder().applyMutation(masterUserSecret).build()); } /** *

* The next time you can modify the DB cluster to use the aurora-iopt1 storage type. *

*

* This setting is only for Aurora DB clusters. *

* * @param ioOptimizedNextAllowedModificationTime * The next time you can modify the DB cluster to use the aurora-iopt1 storage type.

*

* This setting is only for Aurora DB clusters. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ioOptimizedNextAllowedModificationTime(Instant ioOptimizedNextAllowedModificationTime); /** *

* Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, or is * in the process of enabling it. *

* * @param localWriteForwardingStatus * Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, * requested, or is in the process of enabling it. * @see LocalWriteForwardingStatus * @return Returns a reference to this object so that method calls can be chained together. * @see LocalWriteForwardingStatus */ Builder localWriteForwardingStatus(String localWriteForwardingStatus); /** *

* Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, or is * in the process of enabling it. *

* * @param localWriteForwardingStatus * Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, * requested, or is in the process of enabling it. * @see LocalWriteForwardingStatus * @return Returns a reference to this object so that method calls can be chained together. * @see LocalWriteForwardingStatus */ Builder localWriteForwardingStatus(LocalWriteForwardingStatus localWriteForwardingStatus); /** *

* The Amazon Resource Name (ARN) of the recovery point in Amazon Web Services Backup. *

* * @param awsBackupRecoveryPointArn * The Amazon Resource Name (ARN) of the recovery point in Amazon Web Services Backup. * @return Returns a reference to this object so that method calls can be chained together. */ Builder awsBackupRecoveryPointArn(String awsBackupRecoveryPointArn); } static final class BuilderImpl implements Builder { private Integer allocatedStorage; private List availabilityZones = DefaultSdkAutoConstructList.getInstance(); private Integer backupRetentionPeriod; private String characterSetName; private String databaseName; private String dbClusterIdentifier; private String dbClusterParameterGroup; private String dbSubnetGroup; private String status; private Instant automaticRestartTime; private String percentProgress; private Instant earliestRestorableTime; private String endpoint; private String readerEndpoint; private List customEndpoints = DefaultSdkAutoConstructList.getInstance(); private Boolean multiAZ; private String engine; private String engineVersion; private Instant latestRestorableTime; private Integer port; private String masterUsername; private List dbClusterOptionGroupMemberships = DefaultSdkAutoConstructList.getInstance(); private String preferredBackupWindow; private String preferredMaintenanceWindow; private String replicationSourceIdentifier; private List readReplicaIdentifiers = DefaultSdkAutoConstructList.getInstance(); private List dbClusterMembers = DefaultSdkAutoConstructList.getInstance(); private List vpcSecurityGroups = DefaultSdkAutoConstructList.getInstance(); private String hostedZoneId; private Boolean storageEncrypted; private String kmsKeyId; private String dbClusterResourceId; private String dbClusterArn; private List associatedRoles = DefaultSdkAutoConstructList.getInstance(); private Boolean iamDatabaseAuthenticationEnabled; private String cloneGroupId; private Instant clusterCreateTime; private Instant earliestBacktrackTime; private Long backtrackWindow; private Long backtrackConsumedChangeRecords; private List enabledCloudwatchLogsExports = DefaultSdkAutoConstructList.getInstance(); private Integer capacity; private String engineMode; private ScalingConfigurationInfo scalingConfigurationInfo; private Boolean deletionProtection; private Boolean httpEndpointEnabled; private String activityStreamMode; private String activityStreamStatus; private String activityStreamKmsKeyId; private String activityStreamKinesisStreamName; private Boolean copyTagsToSnapshot; private Boolean crossAccountClone; private List domainMemberships = DefaultSdkAutoConstructList.getInstance(); private List tagList = DefaultSdkAutoConstructList.getInstance(); private String globalWriteForwardingStatus; private Boolean globalWriteForwardingRequested; private ClusterPendingModifiedValues pendingModifiedValues; private String dbClusterInstanceClass; private String storageType; private Integer iops; private Boolean publiclyAccessible; private Boolean autoMinorVersionUpgrade; private Integer monitoringInterval; private String monitoringRoleArn; private Boolean performanceInsightsEnabled; private String performanceInsightsKMSKeyId; private Integer performanceInsightsRetentionPeriod; private ServerlessV2ScalingConfigurationInfo serverlessV2ScalingConfiguration; private String networkType; private String dbSystemId; private MasterUserSecret masterUserSecret; private Instant ioOptimizedNextAllowedModificationTime; private String localWriteForwardingStatus; private String awsBackupRecoveryPointArn; private BuilderImpl() { } private BuilderImpl(DBCluster model) { allocatedStorage(model.allocatedStorage); availabilityZones(model.availabilityZones); backupRetentionPeriod(model.backupRetentionPeriod); characterSetName(model.characterSetName); databaseName(model.databaseName); dbClusterIdentifier(model.dbClusterIdentifier); dbClusterParameterGroup(model.dbClusterParameterGroup); dbSubnetGroup(model.dbSubnetGroup); status(model.status); automaticRestartTime(model.automaticRestartTime); percentProgress(model.percentProgress); earliestRestorableTime(model.earliestRestorableTime); endpoint(model.endpoint); readerEndpoint(model.readerEndpoint); customEndpoints(model.customEndpoints); multiAZ(model.multiAZ); engine(model.engine); engineVersion(model.engineVersion); latestRestorableTime(model.latestRestorableTime); port(model.port); masterUsername(model.masterUsername); dbClusterOptionGroupMemberships(model.dbClusterOptionGroupMemberships); preferredBackupWindow(model.preferredBackupWindow); preferredMaintenanceWindow(model.preferredMaintenanceWindow); replicationSourceIdentifier(model.replicationSourceIdentifier); readReplicaIdentifiers(model.readReplicaIdentifiers); dbClusterMembers(model.dbClusterMembers); vpcSecurityGroups(model.vpcSecurityGroups); hostedZoneId(model.hostedZoneId); storageEncrypted(model.storageEncrypted); kmsKeyId(model.kmsKeyId); dbClusterResourceId(model.dbClusterResourceId); dbClusterArn(model.dbClusterArn); associatedRoles(model.associatedRoles); iamDatabaseAuthenticationEnabled(model.iamDatabaseAuthenticationEnabled); cloneGroupId(model.cloneGroupId); clusterCreateTime(model.clusterCreateTime); earliestBacktrackTime(model.earliestBacktrackTime); backtrackWindow(model.backtrackWindow); backtrackConsumedChangeRecords(model.backtrackConsumedChangeRecords); enabledCloudwatchLogsExports(model.enabledCloudwatchLogsExports); capacity(model.capacity); engineMode(model.engineMode); scalingConfigurationInfo(model.scalingConfigurationInfo); deletionProtection(model.deletionProtection); httpEndpointEnabled(model.httpEndpointEnabled); activityStreamMode(model.activityStreamMode); activityStreamStatus(model.activityStreamStatus); activityStreamKmsKeyId(model.activityStreamKmsKeyId); activityStreamKinesisStreamName(model.activityStreamKinesisStreamName); copyTagsToSnapshot(model.copyTagsToSnapshot); crossAccountClone(model.crossAccountClone); domainMemberships(model.domainMemberships); tagList(model.tagList); globalWriteForwardingStatus(model.globalWriteForwardingStatus); globalWriteForwardingRequested(model.globalWriteForwardingRequested); pendingModifiedValues(model.pendingModifiedValues); dbClusterInstanceClass(model.dbClusterInstanceClass); storageType(model.storageType); iops(model.iops); publiclyAccessible(model.publiclyAccessible); autoMinorVersionUpgrade(model.autoMinorVersionUpgrade); monitoringInterval(model.monitoringInterval); monitoringRoleArn(model.monitoringRoleArn); performanceInsightsEnabled(model.performanceInsightsEnabled); performanceInsightsKMSKeyId(model.performanceInsightsKMSKeyId); performanceInsightsRetentionPeriod(model.performanceInsightsRetentionPeriod); serverlessV2ScalingConfiguration(model.serverlessV2ScalingConfiguration); networkType(model.networkType); dbSystemId(model.dbSystemId); masterUserSecret(model.masterUserSecret); ioOptimizedNextAllowedModificationTime(model.ioOptimizedNextAllowedModificationTime); localWriteForwardingStatus(model.localWriteForwardingStatus); awsBackupRecoveryPointArn(model.awsBackupRecoveryPointArn); } public final Integer getAllocatedStorage() { return allocatedStorage; } public final void setAllocatedStorage(Integer allocatedStorage) { this.allocatedStorage = allocatedStorage; } @Override public final Builder allocatedStorage(Integer allocatedStorage) { this.allocatedStorage = allocatedStorage; return this; } public final Collection getAvailabilityZones() { if (availabilityZones instanceof SdkAutoConstructList) { return null; } return availabilityZones; } public final void setAvailabilityZones(Collection availabilityZones) { this.availabilityZones = AvailabilityZonesCopier.copy(availabilityZones); } @Override public final Builder availabilityZones(Collection availabilityZones) { this.availabilityZones = AvailabilityZonesCopier.copy(availabilityZones); return this; } @Override @SafeVarargs public final Builder availabilityZones(String... availabilityZones) { availabilityZones(Arrays.asList(availabilityZones)); return this; } public final Integer getBackupRetentionPeriod() { return backupRetentionPeriod; } public final void setBackupRetentionPeriod(Integer backupRetentionPeriod) { this.backupRetentionPeriod = backupRetentionPeriod; } @Override public final Builder backupRetentionPeriod(Integer backupRetentionPeriod) { this.backupRetentionPeriod = backupRetentionPeriod; return this; } public final String getCharacterSetName() { return characterSetName; } public final void setCharacterSetName(String characterSetName) { this.characterSetName = characterSetName; } @Override public final Builder characterSetName(String characterSetName) { this.characterSetName = characterSetName; return this; } public final String getDatabaseName() { return databaseName; } public final void setDatabaseName(String databaseName) { this.databaseName = databaseName; } @Override public final Builder databaseName(String databaseName) { this.databaseName = databaseName; return this; } public final String getDbClusterIdentifier() { return dbClusterIdentifier; } public final void setDbClusterIdentifier(String dbClusterIdentifier) { this.dbClusterIdentifier = dbClusterIdentifier; } @Override public final Builder dbClusterIdentifier(String dbClusterIdentifier) { this.dbClusterIdentifier = dbClusterIdentifier; return this; } public final String getDbClusterParameterGroup() { return dbClusterParameterGroup; } public final void setDbClusterParameterGroup(String dbClusterParameterGroup) { this.dbClusterParameterGroup = dbClusterParameterGroup; } @Override public final Builder dbClusterParameterGroup(String dbClusterParameterGroup) { this.dbClusterParameterGroup = dbClusterParameterGroup; return this; } public final String getDbSubnetGroup() { return dbSubnetGroup; } public final void setDbSubnetGroup(String dbSubnetGroup) { this.dbSubnetGroup = dbSubnetGroup; } @Override public final Builder dbSubnetGroup(String dbSubnetGroup) { this.dbSubnetGroup = dbSubnetGroup; return this; } public final String getStatus() { return status; } public final void setStatus(String status) { this.status = status; } @Override public final Builder status(String status) { this.status = status; return this; } public final Instant getAutomaticRestartTime() { return automaticRestartTime; } public final void setAutomaticRestartTime(Instant automaticRestartTime) { this.automaticRestartTime = automaticRestartTime; } @Override public final Builder automaticRestartTime(Instant automaticRestartTime) { this.automaticRestartTime = automaticRestartTime; return this; } public final String getPercentProgress() { return percentProgress; } public final void setPercentProgress(String percentProgress) { this.percentProgress = percentProgress; } @Override public final Builder percentProgress(String percentProgress) { this.percentProgress = percentProgress; return this; } public final Instant getEarliestRestorableTime() { return earliestRestorableTime; } public final void setEarliestRestorableTime(Instant earliestRestorableTime) { this.earliestRestorableTime = earliestRestorableTime; } @Override public final Builder earliestRestorableTime(Instant earliestRestorableTime) { this.earliestRestorableTime = earliestRestorableTime; return this; } public final String getEndpoint() { return endpoint; } public final void setEndpoint(String endpoint) { this.endpoint = endpoint; } @Override public final Builder endpoint(String endpoint) { this.endpoint = endpoint; return this; } public final String getReaderEndpoint() { return readerEndpoint; } public final void setReaderEndpoint(String readerEndpoint) { this.readerEndpoint = readerEndpoint; } @Override public final Builder readerEndpoint(String readerEndpoint) { this.readerEndpoint = readerEndpoint; return this; } public final Collection getCustomEndpoints() { if (customEndpoints instanceof SdkAutoConstructList) { return null; } return customEndpoints; } public final void setCustomEndpoints(Collection customEndpoints) { this.customEndpoints = StringListCopier.copy(customEndpoints); } @Override public final Builder customEndpoints(Collection customEndpoints) { this.customEndpoints = StringListCopier.copy(customEndpoints); return this; } @Override @SafeVarargs public final Builder customEndpoints(String... customEndpoints) { customEndpoints(Arrays.asList(customEndpoints)); return this; } public final Boolean getMultiAZ() { return multiAZ; } public final void setMultiAZ(Boolean multiAZ) { this.multiAZ = multiAZ; } @Override public final Builder multiAZ(Boolean multiAZ) { this.multiAZ = multiAZ; return this; } public final String getEngine() { return engine; } public final void setEngine(String engine) { this.engine = engine; } @Override public final Builder engine(String engine) { this.engine = engine; return this; } public final String getEngineVersion() { return engineVersion; } public final void setEngineVersion(String engineVersion) { this.engineVersion = engineVersion; } @Override public final Builder engineVersion(String engineVersion) { this.engineVersion = engineVersion; return this; } public final Instant getLatestRestorableTime() { return latestRestorableTime; } public final void setLatestRestorableTime(Instant latestRestorableTime) { this.latestRestorableTime = latestRestorableTime; } @Override public final Builder latestRestorableTime(Instant latestRestorableTime) { this.latestRestorableTime = latestRestorableTime; return this; } public final Integer getPort() { return port; } public final void setPort(Integer port) { this.port = port; } @Override public final Builder port(Integer port) { this.port = port; return this; } public final String getMasterUsername() { return masterUsername; } public final void setMasterUsername(String masterUsername) { this.masterUsername = masterUsername; } @Override public final Builder masterUsername(String masterUsername) { this.masterUsername = masterUsername; return this; } public final List getDbClusterOptionGroupMemberships() { List result = DBClusterOptionGroupMembershipsCopier .copyToBuilder(this.dbClusterOptionGroupMemberships); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setDbClusterOptionGroupMemberships( Collection dbClusterOptionGroupMemberships) { this.dbClusterOptionGroupMemberships = DBClusterOptionGroupMembershipsCopier .copyFromBuilder(dbClusterOptionGroupMemberships); } @Override public final Builder dbClusterOptionGroupMemberships( Collection dbClusterOptionGroupMemberships) { this.dbClusterOptionGroupMemberships = DBClusterOptionGroupMembershipsCopier.copy(dbClusterOptionGroupMemberships); return this; } @Override @SafeVarargs public final Builder dbClusterOptionGroupMemberships(DBClusterOptionGroupStatus... dbClusterOptionGroupMemberships) { dbClusterOptionGroupMemberships(Arrays.asList(dbClusterOptionGroupMemberships)); return this; } @Override @SafeVarargs public final Builder dbClusterOptionGroupMemberships( Consumer... dbClusterOptionGroupMemberships) { dbClusterOptionGroupMemberships(Stream.of(dbClusterOptionGroupMemberships) .map(c -> DBClusterOptionGroupStatus.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final String getPreferredBackupWindow() { return preferredBackupWindow; } public final void setPreferredBackupWindow(String preferredBackupWindow) { this.preferredBackupWindow = preferredBackupWindow; } @Override public final Builder preferredBackupWindow(String preferredBackupWindow) { this.preferredBackupWindow = preferredBackupWindow; return this; } public final String getPreferredMaintenanceWindow() { return preferredMaintenanceWindow; } public final void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; } @Override public final Builder preferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; return this; } public final String getReplicationSourceIdentifier() { return replicationSourceIdentifier; } public final void setReplicationSourceIdentifier(String replicationSourceIdentifier) { this.replicationSourceIdentifier = replicationSourceIdentifier; } @Override public final Builder replicationSourceIdentifier(String replicationSourceIdentifier) { this.replicationSourceIdentifier = replicationSourceIdentifier; return this; } public final Collection getReadReplicaIdentifiers() { if (readReplicaIdentifiers instanceof SdkAutoConstructList) { return null; } return readReplicaIdentifiers; } public final void setReadReplicaIdentifiers(Collection readReplicaIdentifiers) { this.readReplicaIdentifiers = ReadReplicaIdentifierListCopier.copy(readReplicaIdentifiers); } @Override public final Builder readReplicaIdentifiers(Collection readReplicaIdentifiers) { this.readReplicaIdentifiers = ReadReplicaIdentifierListCopier.copy(readReplicaIdentifiers); return this; } @Override @SafeVarargs public final Builder readReplicaIdentifiers(String... readReplicaIdentifiers) { readReplicaIdentifiers(Arrays.asList(readReplicaIdentifiers)); return this; } public final List getDbClusterMembers() { List result = DBClusterMemberListCopier.copyToBuilder(this.dbClusterMembers); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setDbClusterMembers(Collection dbClusterMembers) { this.dbClusterMembers = DBClusterMemberListCopier.copyFromBuilder(dbClusterMembers); } @Override public final Builder dbClusterMembers(Collection dbClusterMembers) { this.dbClusterMembers = DBClusterMemberListCopier.copy(dbClusterMembers); return this; } @Override @SafeVarargs public final Builder dbClusterMembers(DBClusterMember... dbClusterMembers) { dbClusterMembers(Arrays.asList(dbClusterMembers)); return this; } @Override @SafeVarargs public final Builder dbClusterMembers(Consumer... dbClusterMembers) { dbClusterMembers(Stream.of(dbClusterMembers).map(c -> DBClusterMember.builder().applyMutation(c).build()) .collect(Collectors.toList())); return this; } public final List getVpcSecurityGroups() { List result = VpcSecurityGroupMembershipListCopier .copyToBuilder(this.vpcSecurityGroups); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setVpcSecurityGroups(Collection vpcSecurityGroups) { this.vpcSecurityGroups = VpcSecurityGroupMembershipListCopier.copyFromBuilder(vpcSecurityGroups); } @Override public final Builder vpcSecurityGroups(Collection vpcSecurityGroups) { this.vpcSecurityGroups = VpcSecurityGroupMembershipListCopier.copy(vpcSecurityGroups); return this; } @Override @SafeVarargs public final Builder vpcSecurityGroups(VpcSecurityGroupMembership... vpcSecurityGroups) { vpcSecurityGroups(Arrays.asList(vpcSecurityGroups)); return this; } @Override @SafeVarargs public final Builder vpcSecurityGroups(Consumer... vpcSecurityGroups) { vpcSecurityGroups(Stream.of(vpcSecurityGroups) .map(c -> VpcSecurityGroupMembership.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final String getHostedZoneId() { return hostedZoneId; } public final void setHostedZoneId(String hostedZoneId) { this.hostedZoneId = hostedZoneId; } @Override public final Builder hostedZoneId(String hostedZoneId) { this.hostedZoneId = hostedZoneId; return this; } public final Boolean getStorageEncrypted() { return storageEncrypted; } public final void setStorageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; } @Override public final Builder storageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; return this; } public final String getKmsKeyId() { return kmsKeyId; } public final void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } @Override public final Builder kmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; return this; } public final String getDbClusterResourceId() { return dbClusterResourceId; } public final void setDbClusterResourceId(String dbClusterResourceId) { this.dbClusterResourceId = dbClusterResourceId; } @Override public final Builder dbClusterResourceId(String dbClusterResourceId) { this.dbClusterResourceId = dbClusterResourceId; return this; } public final String getDbClusterArn() { return dbClusterArn; } public final void setDbClusterArn(String dbClusterArn) { this.dbClusterArn = dbClusterArn; } @Override public final Builder dbClusterArn(String dbClusterArn) { this.dbClusterArn = dbClusterArn; return this; } public final List getAssociatedRoles() { List result = DBClusterRolesCopier.copyToBuilder(this.associatedRoles); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setAssociatedRoles(Collection associatedRoles) { this.associatedRoles = DBClusterRolesCopier.copyFromBuilder(associatedRoles); } @Override public final Builder associatedRoles(Collection associatedRoles) { this.associatedRoles = DBClusterRolesCopier.copy(associatedRoles); return this; } @Override @SafeVarargs public final Builder associatedRoles(DBClusterRole... associatedRoles) { associatedRoles(Arrays.asList(associatedRoles)); return this; } @Override @SafeVarargs public final Builder associatedRoles(Consumer... associatedRoles) { associatedRoles(Stream.of(associatedRoles).map(c -> DBClusterRole.builder().applyMutation(c).build()) .collect(Collectors.toList())); return this; } public final Boolean getIamDatabaseAuthenticationEnabled() { return iamDatabaseAuthenticationEnabled; } public final void setIamDatabaseAuthenticationEnabled(Boolean iamDatabaseAuthenticationEnabled) { this.iamDatabaseAuthenticationEnabled = iamDatabaseAuthenticationEnabled; } @Override public final Builder iamDatabaseAuthenticationEnabled(Boolean iamDatabaseAuthenticationEnabled) { this.iamDatabaseAuthenticationEnabled = iamDatabaseAuthenticationEnabled; return this; } public final String getCloneGroupId() { return cloneGroupId; } public final void setCloneGroupId(String cloneGroupId) { this.cloneGroupId = cloneGroupId; } @Override public final Builder cloneGroupId(String cloneGroupId) { this.cloneGroupId = cloneGroupId; return this; } public final Instant getClusterCreateTime() { return clusterCreateTime; } public final void setClusterCreateTime(Instant clusterCreateTime) { this.clusterCreateTime = clusterCreateTime; } @Override public final Builder clusterCreateTime(Instant clusterCreateTime) { this.clusterCreateTime = clusterCreateTime; return this; } public final Instant getEarliestBacktrackTime() { return earliestBacktrackTime; } public final void setEarliestBacktrackTime(Instant earliestBacktrackTime) { this.earliestBacktrackTime = earliestBacktrackTime; } @Override public final Builder earliestBacktrackTime(Instant earliestBacktrackTime) { this.earliestBacktrackTime = earliestBacktrackTime; return this; } public final Long getBacktrackWindow() { return backtrackWindow; } public final void setBacktrackWindow(Long backtrackWindow) { this.backtrackWindow = backtrackWindow; } @Override public final Builder backtrackWindow(Long backtrackWindow) { this.backtrackWindow = backtrackWindow; return this; } public final Long getBacktrackConsumedChangeRecords() { return backtrackConsumedChangeRecords; } public final void setBacktrackConsumedChangeRecords(Long backtrackConsumedChangeRecords) { this.backtrackConsumedChangeRecords = backtrackConsumedChangeRecords; } @Override public final Builder backtrackConsumedChangeRecords(Long backtrackConsumedChangeRecords) { this.backtrackConsumedChangeRecords = backtrackConsumedChangeRecords; return this; } public final Collection getEnabledCloudwatchLogsExports() { if (enabledCloudwatchLogsExports instanceof SdkAutoConstructList) { return null; } return enabledCloudwatchLogsExports; } public final void setEnabledCloudwatchLogsExports(Collection enabledCloudwatchLogsExports) { this.enabledCloudwatchLogsExports = LogTypeListCopier.copy(enabledCloudwatchLogsExports); } @Override public final Builder enabledCloudwatchLogsExports(Collection enabledCloudwatchLogsExports) { this.enabledCloudwatchLogsExports = LogTypeListCopier.copy(enabledCloudwatchLogsExports); return this; } @Override @SafeVarargs public final Builder enabledCloudwatchLogsExports(String... enabledCloudwatchLogsExports) { enabledCloudwatchLogsExports(Arrays.asList(enabledCloudwatchLogsExports)); return this; } public final Integer getCapacity() { return capacity; } public final void setCapacity(Integer capacity) { this.capacity = capacity; } @Override public final Builder capacity(Integer capacity) { this.capacity = capacity; return this; } public final String getEngineMode() { return engineMode; } public final void setEngineMode(String engineMode) { this.engineMode = engineMode; } @Override public final Builder engineMode(String engineMode) { this.engineMode = engineMode; return this; } public final ScalingConfigurationInfo.Builder getScalingConfigurationInfo() { return scalingConfigurationInfo != null ? scalingConfigurationInfo.toBuilder() : null; } public final void setScalingConfigurationInfo(ScalingConfigurationInfo.BuilderImpl scalingConfigurationInfo) { this.scalingConfigurationInfo = scalingConfigurationInfo != null ? scalingConfigurationInfo.build() : null; } @Override public final Builder scalingConfigurationInfo(ScalingConfigurationInfo scalingConfigurationInfo) { this.scalingConfigurationInfo = scalingConfigurationInfo; return this; } public final Boolean getDeletionProtection() { return deletionProtection; } public final void setDeletionProtection(Boolean deletionProtection) { this.deletionProtection = deletionProtection; } @Override public final Builder deletionProtection(Boolean deletionProtection) { this.deletionProtection = deletionProtection; return this; } public final Boolean getHttpEndpointEnabled() { return httpEndpointEnabled; } public final void setHttpEndpointEnabled(Boolean httpEndpointEnabled) { this.httpEndpointEnabled = httpEndpointEnabled; } @Override public final Builder httpEndpointEnabled(Boolean httpEndpointEnabled) { this.httpEndpointEnabled = httpEndpointEnabled; return this; } public final String getActivityStreamMode() { return activityStreamMode; } public final void setActivityStreamMode(String activityStreamMode) { this.activityStreamMode = activityStreamMode; } @Override public final Builder activityStreamMode(String activityStreamMode) { this.activityStreamMode = activityStreamMode; return this; } @Override public final Builder activityStreamMode(ActivityStreamMode activityStreamMode) { this.activityStreamMode(activityStreamMode == null ? null : activityStreamMode.toString()); return this; } public final String getActivityStreamStatus() { return activityStreamStatus; } public final void setActivityStreamStatus(String activityStreamStatus) { this.activityStreamStatus = activityStreamStatus; } @Override public final Builder activityStreamStatus(String activityStreamStatus) { this.activityStreamStatus = activityStreamStatus; return this; } @Override public final Builder activityStreamStatus(ActivityStreamStatus activityStreamStatus) { this.activityStreamStatus(activityStreamStatus == null ? null : activityStreamStatus.toString()); return this; } public final String getActivityStreamKmsKeyId() { return activityStreamKmsKeyId; } public final void setActivityStreamKmsKeyId(String activityStreamKmsKeyId) { this.activityStreamKmsKeyId = activityStreamKmsKeyId; } @Override public final Builder activityStreamKmsKeyId(String activityStreamKmsKeyId) { this.activityStreamKmsKeyId = activityStreamKmsKeyId; return this; } public final String getActivityStreamKinesisStreamName() { return activityStreamKinesisStreamName; } public final void setActivityStreamKinesisStreamName(String activityStreamKinesisStreamName) { this.activityStreamKinesisStreamName = activityStreamKinesisStreamName; } @Override public final Builder activityStreamKinesisStreamName(String activityStreamKinesisStreamName) { this.activityStreamKinesisStreamName = activityStreamKinesisStreamName; return this; } public final Boolean getCopyTagsToSnapshot() { return copyTagsToSnapshot; } public final void setCopyTagsToSnapshot(Boolean copyTagsToSnapshot) { this.copyTagsToSnapshot = copyTagsToSnapshot; } @Override public final Builder copyTagsToSnapshot(Boolean copyTagsToSnapshot) { this.copyTagsToSnapshot = copyTagsToSnapshot; return this; } public final Boolean getCrossAccountClone() { return crossAccountClone; } public final void setCrossAccountClone(Boolean crossAccountClone) { this.crossAccountClone = crossAccountClone; } @Override public final Builder crossAccountClone(Boolean crossAccountClone) { this.crossAccountClone = crossAccountClone; return this; } public final List getDomainMemberships() { List result = DomainMembershipListCopier.copyToBuilder(this.domainMemberships); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setDomainMemberships(Collection domainMemberships) { this.domainMemberships = DomainMembershipListCopier.copyFromBuilder(domainMemberships); } @Override public final Builder domainMemberships(Collection domainMemberships) { this.domainMemberships = DomainMembershipListCopier.copy(domainMemberships); return this; } @Override @SafeVarargs public final Builder domainMemberships(DomainMembership... domainMemberships) { domainMemberships(Arrays.asList(domainMemberships)); return this; } @Override @SafeVarargs public final Builder domainMemberships(Consumer... domainMemberships) { domainMemberships(Stream.of(domainMemberships).map(c -> DomainMembership.builder().applyMutation(c).build()) .collect(Collectors.toList())); return this; } public final List getTagList() { List result = TagListCopier.copyToBuilder(this.tagList); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setTagList(Collection tagList) { this.tagList = TagListCopier.copyFromBuilder(tagList); } @Override public final Builder tagList(Collection tagList) { this.tagList = TagListCopier.copy(tagList); return this; } @Override @SafeVarargs public final Builder tagList(Tag... tagList) { tagList(Arrays.asList(tagList)); return this; } @Override @SafeVarargs public final Builder tagList(Consumer... tagList) { tagList(Stream.of(tagList).map(c -> Tag.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final String getGlobalWriteForwardingStatus() { return globalWriteForwardingStatus; } public final void setGlobalWriteForwardingStatus(String globalWriteForwardingStatus) { this.globalWriteForwardingStatus = globalWriteForwardingStatus; } @Override public final Builder globalWriteForwardingStatus(String globalWriteForwardingStatus) { this.globalWriteForwardingStatus = globalWriteForwardingStatus; return this; } @Override public final Builder globalWriteForwardingStatus(WriteForwardingStatus globalWriteForwardingStatus) { this.globalWriteForwardingStatus(globalWriteForwardingStatus == null ? null : globalWriteForwardingStatus.toString()); return this; } public final Boolean getGlobalWriteForwardingRequested() { return globalWriteForwardingRequested; } public final void setGlobalWriteForwardingRequested(Boolean globalWriteForwardingRequested) { this.globalWriteForwardingRequested = globalWriteForwardingRequested; } @Override public final Builder globalWriteForwardingRequested(Boolean globalWriteForwardingRequested) { this.globalWriteForwardingRequested = globalWriteForwardingRequested; return this; } public final ClusterPendingModifiedValues.Builder getPendingModifiedValues() { return pendingModifiedValues != null ? pendingModifiedValues.toBuilder() : null; } public final void setPendingModifiedValues(ClusterPendingModifiedValues.BuilderImpl pendingModifiedValues) { this.pendingModifiedValues = pendingModifiedValues != null ? pendingModifiedValues.build() : null; } @Override public final Builder pendingModifiedValues(ClusterPendingModifiedValues pendingModifiedValues) { this.pendingModifiedValues = pendingModifiedValues; return this; } public final String getDbClusterInstanceClass() { return dbClusterInstanceClass; } public final void setDbClusterInstanceClass(String dbClusterInstanceClass) { this.dbClusterInstanceClass = dbClusterInstanceClass; } @Override public final Builder dbClusterInstanceClass(String dbClusterInstanceClass) { this.dbClusterInstanceClass = dbClusterInstanceClass; return this; } public final String getStorageType() { return storageType; } public final void setStorageType(String storageType) { this.storageType = storageType; } @Override public final Builder storageType(String storageType) { this.storageType = storageType; return this; } public final Integer getIops() { return iops; } public final void setIops(Integer iops) { this.iops = iops; } @Override public final Builder iops(Integer iops) { this.iops = iops; return this; } public final Boolean getPubliclyAccessible() { return publiclyAccessible; } public final void setPubliclyAccessible(Boolean publiclyAccessible) { this.publiclyAccessible = publiclyAccessible; } @Override public final Builder publiclyAccessible(Boolean publiclyAccessible) { this.publiclyAccessible = publiclyAccessible; return this; } public final Boolean getAutoMinorVersionUpgrade() { return autoMinorVersionUpgrade; } public final void setAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) { this.autoMinorVersionUpgrade = autoMinorVersionUpgrade; } @Override public final Builder autoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) { this.autoMinorVersionUpgrade = autoMinorVersionUpgrade; return this; } public final Integer getMonitoringInterval() { return monitoringInterval; } public final void setMonitoringInterval(Integer monitoringInterval) { this.monitoringInterval = monitoringInterval; } @Override public final Builder monitoringInterval(Integer monitoringInterval) { this.monitoringInterval = monitoringInterval; return this; } public final String getMonitoringRoleArn() { return monitoringRoleArn; } public final void setMonitoringRoleArn(String monitoringRoleArn) { this.monitoringRoleArn = monitoringRoleArn; } @Override public final Builder monitoringRoleArn(String monitoringRoleArn) { this.monitoringRoleArn = monitoringRoleArn; return this; } public final Boolean getPerformanceInsightsEnabled() { return performanceInsightsEnabled; } public final void setPerformanceInsightsEnabled(Boolean performanceInsightsEnabled) { this.performanceInsightsEnabled = performanceInsightsEnabled; } @Override public final Builder performanceInsightsEnabled(Boolean performanceInsightsEnabled) { this.performanceInsightsEnabled = performanceInsightsEnabled; return this; } public final String getPerformanceInsightsKMSKeyId() { return performanceInsightsKMSKeyId; } public final void setPerformanceInsightsKMSKeyId(String performanceInsightsKMSKeyId) { this.performanceInsightsKMSKeyId = performanceInsightsKMSKeyId; } @Override public final Builder performanceInsightsKMSKeyId(String performanceInsightsKMSKeyId) { this.performanceInsightsKMSKeyId = performanceInsightsKMSKeyId; return this; } public final Integer getPerformanceInsightsRetentionPeriod() { return performanceInsightsRetentionPeriod; } public final void setPerformanceInsightsRetentionPeriod(Integer performanceInsightsRetentionPeriod) { this.performanceInsightsRetentionPeriod = performanceInsightsRetentionPeriod; } @Override public final Builder performanceInsightsRetentionPeriod(Integer performanceInsightsRetentionPeriod) { this.performanceInsightsRetentionPeriod = performanceInsightsRetentionPeriod; return this; } public final ServerlessV2ScalingConfigurationInfo.Builder getServerlessV2ScalingConfiguration() { return serverlessV2ScalingConfiguration != null ? serverlessV2ScalingConfiguration.toBuilder() : null; } public final void setServerlessV2ScalingConfiguration( ServerlessV2ScalingConfigurationInfo.BuilderImpl serverlessV2ScalingConfiguration) { this.serverlessV2ScalingConfiguration = serverlessV2ScalingConfiguration != null ? serverlessV2ScalingConfiguration .build() : null; } @Override public final Builder serverlessV2ScalingConfiguration( ServerlessV2ScalingConfigurationInfo serverlessV2ScalingConfiguration) { this.serverlessV2ScalingConfiguration = serverlessV2ScalingConfiguration; return this; } public final String getNetworkType() { return networkType; } public final void setNetworkType(String networkType) { this.networkType = networkType; } @Override public final Builder networkType(String networkType) { this.networkType = networkType; return this; } public final String getDbSystemId() { return dbSystemId; } public final void setDbSystemId(String dbSystemId) { this.dbSystemId = dbSystemId; } @Override public final Builder dbSystemId(String dbSystemId) { this.dbSystemId = dbSystemId; return this; } public final MasterUserSecret.Builder getMasterUserSecret() { return masterUserSecret != null ? masterUserSecret.toBuilder() : null; } public final void setMasterUserSecret(MasterUserSecret.BuilderImpl masterUserSecret) { this.masterUserSecret = masterUserSecret != null ? masterUserSecret.build() : null; } @Override public final Builder masterUserSecret(MasterUserSecret masterUserSecret) { this.masterUserSecret = masterUserSecret; return this; } public final Instant getIoOptimizedNextAllowedModificationTime() { return ioOptimizedNextAllowedModificationTime; } public final void setIoOptimizedNextAllowedModificationTime(Instant ioOptimizedNextAllowedModificationTime) { this.ioOptimizedNextAllowedModificationTime = ioOptimizedNextAllowedModificationTime; } @Override public final Builder ioOptimizedNextAllowedModificationTime(Instant ioOptimizedNextAllowedModificationTime) { this.ioOptimizedNextAllowedModificationTime = ioOptimizedNextAllowedModificationTime; return this; } public final String getLocalWriteForwardingStatus() { return localWriteForwardingStatus; } public final void setLocalWriteForwardingStatus(String localWriteForwardingStatus) { this.localWriteForwardingStatus = localWriteForwardingStatus; } @Override public final Builder localWriteForwardingStatus(String localWriteForwardingStatus) { this.localWriteForwardingStatus = localWriteForwardingStatus; return this; } @Override public final Builder localWriteForwardingStatus(LocalWriteForwardingStatus localWriteForwardingStatus) { this.localWriteForwardingStatus(localWriteForwardingStatus == null ? null : localWriteForwardingStatus.toString()); return this; } public final String getAwsBackupRecoveryPointArn() { return awsBackupRecoveryPointArn; } public final void setAwsBackupRecoveryPointArn(String awsBackupRecoveryPointArn) { this.awsBackupRecoveryPointArn = awsBackupRecoveryPointArn; } @Override public final Builder awsBackupRecoveryPointArn(String awsBackupRecoveryPointArn) { this.awsBackupRecoveryPointArn = awsBackupRecoveryPointArn; return this; } @Override public DBCluster build() { return new DBCluster(this); } @Override public List> sdkFields() { return SDK_FIELDS; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy