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 extends Builder> 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