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

software.amazon.awssdk.services.neptune.model.DBCluster Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Neptune module holds the client classes that are used for communicating with Neptune.

There is a newer version: 2.29.39
Show newest version
/*
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */

package software.amazon.awssdk.services.neptune.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 Neptune DB cluster. *

*

* This data type is used as a response element in the DescribeDBClusters action. *

*/ @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 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 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> 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 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 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, PERCENT_PROGRESS_FIELD, EARLIEST_RESTORABLE_TIME_FIELD, ENDPOINT_FIELD, READER_ENDPOINT_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, ENABLED_CLOUDWATCH_LOGS_EXPORTS_FIELD, DELETION_PROTECTION_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 String percentProgress; private final Instant earliestRestorableTime; private final String endpoint; private final String readerEndpoint; 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 List enabledCloudwatchLogsExports; private final Boolean deletionProtection; 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.percentProgress = builder.percentProgress; this.earliestRestorableTime = builder.earliestRestorableTime; this.endpoint = builder.endpoint; this.readerEndpoint = builder.readerEndpoint; 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.enabledCloudwatchLogsExports = builder.enabledCloudwatchLogsExports; this.deletionProtection = builder.deletionProtection; } /** *

* AllocatedStorage always returns 1, because Neptune DB cluster storage size is not fixed, but instead * automatically adjusts as needed. *

* * @return AllocatedStorage always returns 1, because Neptune DB cluster storage size is not fixed, but * instead automatically adjusts as needed. */ public final Integer allocatedStorage() { return allocatedStorage; } /** * Returns true if the AvailabilityZones property was specified by the sender (it may be empty), or false if the * sender did not specify the value (it will be empty). For responses returned by the SDK, the sender is the AWS * service. */ public final boolean hasAvailabilityZones() { return availabilityZones != null && !(availabilityZones instanceof SdkAutoConstructList); } /** *

* Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in. *

*

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

*

* You can use {@link #hasAvailabilityZones()} to see if a value was sent in this field. *

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

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

* * @return Specifies the number of days for which automatic DB snapshots are retained. */ public final Integer backupRetentionPeriod() { return backupRetentionPeriod; } /** *

* (Not supported by Neptune) *

* * @return (Not supported by Neptune) */ public final String characterSetName() { return characterSetName; } /** *

* Contains the name of the initial database of this DB cluster that was provided at create time, if one was * specified when the DB cluster was created. This same name is returned for the life of the DB cluster. *

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

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

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

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

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

* Specifies information on the subnet group associated with the DB cluster, including the name, description, and * subnets in the subnet group. *

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

* Specifies the current state of this DB cluster. *

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

* Specifies the progress of the operation as a percentage. *

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

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

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

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

* * @return Specifies 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 * Read Replicas that are available in a DB cluster. As clients request new connections to the reader endpoint, * Neptune distributes the connection requests among the Read Replicas in the DB cluster. This functionality can * help balance your read workload across multiple Read Replicas in your DB cluster. *

*

* If a failover occurs, and the Read 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 Read 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 Read Replicas that are available in a DB cluster. As clients request new connections to the * reader endpoint, Neptune distributes the connection requests among the Read Replicas in the DB cluster. * This functionality can help balance your read workload across multiple Read Replicas in your DB * cluster.

*

* If a failover occurs, and the Read 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 Read Replicas in * the cluster, you can then reconnect to the reader endpoint. */ public final String readerEndpoint() { return readerEndpoint; } /** *

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

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

* Provides the name of the database engine to be used for this DB cluster. *

* * @return Provides the name of the database engine to be used for this DB cluster. */ public final String engine() { return engine; } /** *

* Indicates the database engine version. *

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

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

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

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

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

* Contains the master username for the DB cluster. *

* * @return Contains the master username for the DB cluster. */ public final String masterUsername() { return masterUsername; } /** * Returns true if the DBClusterOptionGroupMemberships property was specified by the sender (it may be empty), or * false if the sender did not specify the value (it will be empty). For responses returned by the SDK, the sender * is the AWS service. */ public final boolean hasDbClusterOptionGroupMemberships() { return dbClusterOptionGroupMemberships != null && !(dbClusterOptionGroupMemberships instanceof SdkAutoConstructList); } /** *

* (Not supported by Neptune) *

*

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

*

* You can use {@link #hasDbClusterOptionGroupMemberships()} to see if a value was sent in this field. *

* * @return (Not supported by Neptune) */ public final List dbClusterOptionGroupMemberships() { return dbClusterOptionGroupMemberships; } /** *

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

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

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

* * @return Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time * (UTC). */ public final String preferredMaintenanceWindow() { return preferredMaintenanceWindow; } /** *

* Not supported by Neptune. *

* * @return Not supported by Neptune. */ public final String replicationSourceIdentifier() { return replicationSourceIdentifier; } /** * Returns true if the ReadReplicaIdentifiers property was specified by the sender (it may be empty), or false if * the sender did not specify the value (it will be empty). For responses returned by the SDK, the sender is the AWS * service. */ 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. *

*

* You can use {@link #hasReadReplicaIdentifiers()} to see if a value was sent in this field. *

* * @return Contains one or more identifiers of the Read Replicas associated with this DB cluster. */ public final List readReplicaIdentifiers() { return readReplicaIdentifiers; } /** * Returns true if the DBClusterMembers property was specified by the sender (it may be empty), or false if the * sender did not specify the value (it will be empty). For responses returned by the SDK, the sender is the AWS * service. */ public final boolean hasDbClusterMembers() { return dbClusterMembers != null && !(dbClusterMembers instanceof SdkAutoConstructList); } /** *

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

*

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

*

* You can use {@link #hasDbClusterMembers()} to see if a value was sent in this field. *

* * @return Provides the list of instances that make up the DB cluster. */ public final List dbClusterMembers() { return dbClusterMembers; } /** * Returns true if the VpcSecurityGroups property was specified by the sender (it may be empty), or false if the * sender did not specify the value (it will be empty). For responses returned by the SDK, the sender is the AWS * service. */ public final boolean hasVpcSecurityGroups() { return vpcSecurityGroups != null && !(vpcSecurityGroups instanceof SdkAutoConstructList); } /** *

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

*

* You can use {@link #hasVpcSecurityGroups()} to see if a value was sent in this field. *

* * @return Provides a list of VPC security groups that the DB cluster belongs to. */ public final List vpcSecurityGroups() { return vpcSecurityGroups; } /** *

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

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

* Specifies whether the DB cluster is encrypted. *

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

* If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster. *

* * @return If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster. */ public final String kmsKeyId() { return kmsKeyId; } /** *

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

* * @return The AWS Region-unique, immutable identifier for the DB cluster. This identifier is found in AWS * CloudTrail log entries whenever the AWS 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; } /** * Returns true if the AssociatedRoles property was specified by the sender (it may be empty), or false if the * sender did not specify the value (it will be empty). For responses returned by the SDK, the sender is the AWS * service. */ public final boolean hasAssociatedRoles() { return associatedRoles != null && !(associatedRoles instanceof SdkAutoConstructList); } /** *

* Provides a list of the AWS 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 AWS services * on your behalf. *

*

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

*

* You can use {@link #hasAssociatedRoles()} to see if a value was sent in this field. *

* * @return Provides a list of the AWS 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 AWS services on your behalf. */ public final List associatedRoles() { return associatedRoles; } /** *

* True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled, and * otherwise false. *

* * @return True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled, and * otherwise false. */ public final Boolean iamDatabaseAuthenticationEnabled() { return iamDatabaseAuthenticationEnabled; } /** *

* Identifies the clone group to which the DB cluster is associated. *

* * @return Identifies the clone group to which the DB cluster is associated. */ public final String cloneGroupId() { return cloneGroupId; } /** *

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

* * @return Specifies the time when the DB cluster was created, in Universal Coordinated Time (UTC). */ public final Instant clusterCreateTime() { return clusterCreateTime; } /** * Returns true if the EnabledCloudwatchLogsExports property was specified by the sender (it may be empty), or false * if the sender did not specify the value (it will be empty). For responses returned by the SDK, the sender is the * AWS service. */ 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. *

*

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

*

* You can use {@link #hasEnabledCloudwatchLogsExports()} to see if a value was sent in this field. *

* * @return A list of log types that this DB cluster is configured to export to CloudWatch Logs. */ public final List enabledCloudwatchLogsExports() { return enabledCloudwatchLogsExports; } /** *

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

* * @return Indicates whether or not the DB cluster has deletion protection enabled. The database can't be deleted * when deletion protection is enabled. */ public final Boolean deletionProtection() { return deletionProtection; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public final int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + Objects.hashCode(allocatedStorage()); hashCode = 31 * hashCode + Objects.hashCode(hasAvailabilityZones() ? availabilityZones() : null); hashCode = 31 * hashCode + Objects.hashCode(backupRetentionPeriod()); hashCode = 31 * hashCode + Objects.hashCode(characterSetName()); hashCode = 31 * hashCode + Objects.hashCode(databaseName()); hashCode = 31 * hashCode + Objects.hashCode(dbClusterIdentifier()); hashCode = 31 * hashCode + Objects.hashCode(dbClusterParameterGroup()); hashCode = 31 * hashCode + Objects.hashCode(dbSubnetGroup()); hashCode = 31 * hashCode + Objects.hashCode(status()); hashCode = 31 * hashCode + Objects.hashCode(percentProgress()); hashCode = 31 * hashCode + Objects.hashCode(earliestRestorableTime()); hashCode = 31 * hashCode + Objects.hashCode(endpoint()); hashCode = 31 * hashCode + Objects.hashCode(readerEndpoint()); 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(hasEnabledCloudwatchLogsExports() ? enabledCloudwatchLogsExports() : null); hashCode = 31 * hashCode + Objects.hashCode(deletionProtection()); 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(percentProgress(), other.percentProgress()) && Objects.equals(earliestRestorableTime(), other.earliestRestorableTime()) && Objects.equals(endpoint(), other.endpoint()) && Objects.equals(readerEndpoint(), other.readerEndpoint()) && 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()) && hasEnabledCloudwatchLogsExports() == other.hasEnabledCloudwatchLogsExports() && Objects.equals(enabledCloudwatchLogsExports(), other.enabledCloudwatchLogsExports()) && Objects.equals(deletionProtection(), other.deletionProtection()); } /** * 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("PercentProgress", percentProgress()) .add("EarliestRestorableTime", earliestRestorableTime()) .add("Endpoint", endpoint()) .add("ReaderEndpoint", readerEndpoint()) .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("EnabledCloudwatchLogsExports", hasEnabledCloudwatchLogsExports() ? enabledCloudwatchLogsExports() : null) .add("DeletionProtection", deletionProtection()).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 "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 "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 "EnabledCloudwatchLogsExports": return Optional.ofNullable(clazz.cast(enabledCloudwatchLogsExports())); case "DeletionProtection": return Optional.ofNullable(clazz.cast(deletionProtection())); default: return Optional.empty(); } } @Override public final List> sdkFields() { return SDK_FIELDS; } private static Function getter(Function g) { return obj -> g.apply((DBCluster) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends SdkPojo, CopyableBuilder { /** *

* AllocatedStorage always returns 1, because Neptune DB cluster storage size is not fixed, but * instead automatically adjusts as needed. *

* * @param allocatedStorage * AllocatedStorage always returns 1, because Neptune DB cluster storage size is not fixed, * but instead automatically adjusts as needed. * @return Returns a reference to this object so that method calls can be chained together. */ Builder allocatedStorage(Integer allocatedStorage); /** *

* Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in. *

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

* Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in. *

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

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

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

* (Not supported by Neptune) *

* * @param characterSetName * (Not supported by Neptune) * @return Returns a reference to this object so that method calls can be chained together. */ Builder characterSetName(String characterSetName); /** *

* Contains the name of the initial database of this DB cluster that was provided at create time, if one was * specified when the DB cluster was created. This same name is returned for the life of the DB cluster. *

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

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

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

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

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

* Specifies information on the subnet group associated with the DB cluster, including the name, description, * and subnets in the subnet group. *

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

* Specifies the current state of this DB cluster. *

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

* Specifies the progress of the operation as a percentage. *

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

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

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

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

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

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

*

* If a failover occurs, and the Read 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 Read Replicas in the cluster, you * can then reconnect to the reader endpoint. *

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

*

* If a failover occurs, and the Read 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 Read Replicas in * the cluster, you can then reconnect to the reader endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder readerEndpoint(String readerEndpoint); /** *

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

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

* Provides the name of the database engine to be used for this DB cluster. *

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

* Indicates the database engine version. *

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

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

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

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

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

* Contains the master username for the DB cluster. *

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

* (Not supported by Neptune) *

* * @param dbClusterOptionGroupMemberships * (Not supported by Neptune) * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterOptionGroupMemberships(Collection dbClusterOptionGroupMemberships); /** *

* (Not supported by Neptune) *

* * @param dbClusterOptionGroupMemberships * (Not supported by Neptune) * @return Returns a reference to this object so that method calls can be chained together. */ Builder dbClusterOptionGroupMemberships(DBClusterOptionGroupStatus... dbClusterOptionGroupMemberships); /** *

* (Not supported by Neptune) *

* This is a convenience that creates an instance of the {@link List.Builder} * avoiding the need to create one manually via {@link List#builder()}. * * When the {@link Consumer} completes, {@link List.Builder#build()} is called * immediately and its result is passed to {@link * #dbClusterOptionGroupMemberships(List)}. * * @param dbClusterOptionGroupMemberships * a consumer that will call methods on {@link List.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #dbClusterOptionGroupMemberships(List) */ Builder dbClusterOptionGroupMemberships(Consumer... dbClusterOptionGroupMemberships); /** *

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

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

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

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

* Not supported by Neptune. *

* * @param replicationSourceIdentifier * Not supported by Neptune. * @return Returns a reference to this object so that method calls can be chained together. */ Builder replicationSourceIdentifier(String replicationSourceIdentifier); /** *

* Contains one or more identifiers of the Read Replicas associated with this DB cluster. *

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

* Contains one or more identifiers of the Read Replicas associated with this DB cluster. *

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

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

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

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

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

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

* This is a convenience that creates an instance of the {@link List.Builder} avoiding the need * to create one manually via {@link List#builder()}. * * When the {@link Consumer} completes, {@link List.Builder#build()} is called immediately and * its result is passed to {@link #dbClusterMembers(List)}. * * @param dbClusterMembers * a consumer that will call methods on {@link List.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #dbClusterMembers(List) */ Builder dbClusterMembers(Consumer... dbClusterMembers); /** *

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

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

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

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

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

* This is a convenience that creates an instance of the {@link List.Builder} * avoiding the need to create one manually via {@link List#builder()}. * * When the {@link Consumer} completes, {@link List.Builder#build()} is called * immediately and its result is passed to {@link #vpcSecurityGroups(List)}. * * @param vpcSecurityGroups * a consumer that will call methods on {@link List.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #vpcSecurityGroups(List) */ Builder vpcSecurityGroups(Consumer... vpcSecurityGroups); /** *

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

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

* Specifies whether the DB cluster is encrypted. *

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

* If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster. *

* * @param kmsKeyId * If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ Builder kmsKeyId(String kmsKeyId); /** *

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

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

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

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

* Provides a list of the AWS 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 * AWS services on your behalf. *

* * @param associatedRoles * Provides a list of the AWS 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 AWS services on your behalf. * @return Returns a reference to this object so that method calls can be chained together. */ Builder associatedRoles(Collection associatedRoles); /** *

* Provides a list of the AWS 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 * AWS services on your behalf. *

* * @param associatedRoles * Provides a list of the AWS 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 AWS services on your behalf. * @return Returns a reference to this object so that method calls can be chained together. */ Builder associatedRoles(DBClusterRole... associatedRoles); /** *

* Provides a list of the AWS 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 * AWS services on your behalf. *

* This is a convenience that creates an instance of the {@link List.Builder} avoiding the need * to create one manually via {@link List#builder()}. * * When the {@link Consumer} completes, {@link List.Builder#build()} is called immediately and * its result is passed to {@link #associatedRoles(List)}. * * @param associatedRoles * a consumer that will call methods on {@link List.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #associatedRoles(List) */ Builder associatedRoles(Consumer... associatedRoles); /** *

* True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled, and * otherwise false. *

* * @param iamDatabaseAuthenticationEnabled * True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled, * and otherwise false. * @return Returns a reference to this object so that method calls can be chained together. */ Builder iamDatabaseAuthenticationEnabled(Boolean iamDatabaseAuthenticationEnabled); /** *

* Identifies the clone group to which the DB cluster is associated. *

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

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

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

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

* * @param enabledCloudwatchLogsExports * A list of log types that this DB cluster is configured to export to CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ Builder enabledCloudwatchLogsExports(Collection enabledCloudwatchLogsExports); /** *

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

* * @param enabledCloudwatchLogsExports * A list of log types that this DB cluster is configured to export to CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ Builder enabledCloudwatchLogsExports(String... enabledCloudwatchLogsExports); /** *

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

* * @param deletionProtection * Indicates whether or not the DB cluster has deletion protection enabled. The database can't be deleted * when deletion protection is enabled. * @return Returns a reference to this object so that method calls can be chained together. */ Builder deletionProtection(Boolean deletionProtection); } static final class BuilderImpl implements Builder { private Integer allocatedStorage; private List availabilityZones = DefaultSdkAutoConstructList.getInstance(); private Integer backupRetentionPeriod; private String characterSetName; private String databaseName; private String dbClusterIdentifier; private String dbClusterParameterGroup; private String dbSubnetGroup; private String status; private String percentProgress; private Instant earliestRestorableTime; private String endpoint; private String readerEndpoint; private Boolean multiAZ; private String engine; private String engineVersion; private Instant latestRestorableTime; private Integer port; private String masterUsername; private List dbClusterOptionGroupMemberships = DefaultSdkAutoConstructList.getInstance(); private String preferredBackupWindow; private String preferredMaintenanceWindow; private String replicationSourceIdentifier; private List readReplicaIdentifiers = DefaultSdkAutoConstructList.getInstance(); private List dbClusterMembers = DefaultSdkAutoConstructList.getInstance(); private List vpcSecurityGroups = DefaultSdkAutoConstructList.getInstance(); private String hostedZoneId; private Boolean storageEncrypted; private String kmsKeyId; private String dbClusterResourceId; private String dbClusterArn; private List associatedRoles = DefaultSdkAutoConstructList.getInstance(); private Boolean iamDatabaseAuthenticationEnabled; private String cloneGroupId; private Instant clusterCreateTime; private List enabledCloudwatchLogsExports = DefaultSdkAutoConstructList.getInstance(); private Boolean deletionProtection; private BuilderImpl() { } private BuilderImpl(DBCluster model) { allocatedStorage(model.allocatedStorage); availabilityZones(model.availabilityZones); backupRetentionPeriod(model.backupRetentionPeriod); characterSetName(model.characterSetName); databaseName(model.databaseName); dbClusterIdentifier(model.dbClusterIdentifier); dbClusterParameterGroup(model.dbClusterParameterGroup); dbSubnetGroup(model.dbSubnetGroup); status(model.status); percentProgress(model.percentProgress); earliestRestorableTime(model.earliestRestorableTime); endpoint(model.endpoint); readerEndpoint(model.readerEndpoint); multiAZ(model.multiAZ); engine(model.engine); engineVersion(model.engineVersion); latestRestorableTime(model.latestRestorableTime); port(model.port); masterUsername(model.masterUsername); dbClusterOptionGroupMemberships(model.dbClusterOptionGroupMemberships); preferredBackupWindow(model.preferredBackupWindow); preferredMaintenanceWindow(model.preferredMaintenanceWindow); replicationSourceIdentifier(model.replicationSourceIdentifier); readReplicaIdentifiers(model.readReplicaIdentifiers); dbClusterMembers(model.dbClusterMembers); vpcSecurityGroups(model.vpcSecurityGroups); hostedZoneId(model.hostedZoneId); storageEncrypted(model.storageEncrypted); kmsKeyId(model.kmsKeyId); dbClusterResourceId(model.dbClusterResourceId); dbClusterArn(model.dbClusterArn); associatedRoles(model.associatedRoles); iamDatabaseAuthenticationEnabled(model.iamDatabaseAuthenticationEnabled); cloneGroupId(model.cloneGroupId); clusterCreateTime(model.clusterCreateTime); enabledCloudwatchLogsExports(model.enabledCloudwatchLogsExports); deletionProtection(model.deletionProtection); } public final Integer getAllocatedStorage() { return allocatedStorage; } @Override public final Builder allocatedStorage(Integer allocatedStorage) { this.allocatedStorage = allocatedStorage; return this; } public final void setAllocatedStorage(Integer allocatedStorage) { this.allocatedStorage = allocatedStorage; } public final Collection getAvailabilityZones() { if (availabilityZones instanceof SdkAutoConstructList) { return null; } return availabilityZones; } @Override public final Builder availabilityZones(Collection availabilityZones) { this.availabilityZones = AvailabilityZonesCopier.copy(availabilityZones); return this; } @Override @SafeVarargs public final Builder availabilityZones(String... availabilityZones) { availabilityZones(Arrays.asList(availabilityZones)); return this; } public final void setAvailabilityZones(Collection availabilityZones) { this.availabilityZones = AvailabilityZonesCopier.copy(availabilityZones); } public final Integer getBackupRetentionPeriod() { return backupRetentionPeriod; } @Override public final Builder backupRetentionPeriod(Integer backupRetentionPeriod) { this.backupRetentionPeriod = backupRetentionPeriod; return this; } public final void setBackupRetentionPeriod(Integer backupRetentionPeriod) { this.backupRetentionPeriod = backupRetentionPeriod; } public final String getCharacterSetName() { return characterSetName; } @Override public final Builder characterSetName(String characterSetName) { this.characterSetName = characterSetName; return this; } public final void setCharacterSetName(String characterSetName) { this.characterSetName = characterSetName; } public final String getDatabaseName() { return databaseName; } @Override public final Builder databaseName(String databaseName) { this.databaseName = databaseName; return this; } public final void setDatabaseName(String databaseName) { this.databaseName = databaseName; } public final String getDbClusterIdentifier() { return dbClusterIdentifier; } @Override public final Builder dbClusterIdentifier(String dbClusterIdentifier) { this.dbClusterIdentifier = dbClusterIdentifier; return this; } public final void setDbClusterIdentifier(String dbClusterIdentifier) { this.dbClusterIdentifier = dbClusterIdentifier; } public final String getDbClusterParameterGroup() { return dbClusterParameterGroup; } @Override public final Builder dbClusterParameterGroup(String dbClusterParameterGroup) { this.dbClusterParameterGroup = dbClusterParameterGroup; return this; } public final void setDbClusterParameterGroup(String dbClusterParameterGroup) { this.dbClusterParameterGroup = dbClusterParameterGroup; } public final String getDbSubnetGroup() { return dbSubnetGroup; } @Override public final Builder dbSubnetGroup(String dbSubnetGroup) { this.dbSubnetGroup = dbSubnetGroup; return this; } public final void setDbSubnetGroup(String dbSubnetGroup) { this.dbSubnetGroup = dbSubnetGroup; } public final String getStatus() { return status; } @Override public final Builder status(String status) { this.status = status; return this; } public final void setStatus(String status) { this.status = status; } public final String getPercentProgress() { return percentProgress; } @Override public final Builder percentProgress(String percentProgress) { this.percentProgress = percentProgress; return this; } public final void setPercentProgress(String percentProgress) { this.percentProgress = percentProgress; } public final Instant getEarliestRestorableTime() { return earliestRestorableTime; } @Override public final Builder earliestRestorableTime(Instant earliestRestorableTime) { this.earliestRestorableTime = earliestRestorableTime; return this; } public final void setEarliestRestorableTime(Instant earliestRestorableTime) { this.earliestRestorableTime = earliestRestorableTime; } public final String getEndpoint() { return endpoint; } @Override public final Builder endpoint(String endpoint) { this.endpoint = endpoint; return this; } public final void setEndpoint(String endpoint) { this.endpoint = endpoint; } public final String getReaderEndpoint() { return readerEndpoint; } @Override public final Builder readerEndpoint(String readerEndpoint) { this.readerEndpoint = readerEndpoint; return this; } public final void setReaderEndpoint(String readerEndpoint) { this.readerEndpoint = readerEndpoint; } public final Boolean getMultiAZ() { return multiAZ; } @Override public final Builder multiAZ(Boolean multiAZ) { this.multiAZ = multiAZ; return this; } public final void setMultiAZ(Boolean multiAZ) { this.multiAZ = multiAZ; } public final String getEngine() { return engine; } @Override public final Builder engine(String engine) { this.engine = engine; return this; } public final void setEngine(String engine) { this.engine = engine; } public final String getEngineVersion() { return engineVersion; } @Override public final Builder engineVersion(String engineVersion) { this.engineVersion = engineVersion; return this; } public final void setEngineVersion(String engineVersion) { this.engineVersion = engineVersion; } public final Instant getLatestRestorableTime() { return latestRestorableTime; } @Override public final Builder latestRestorableTime(Instant latestRestorableTime) { this.latestRestorableTime = latestRestorableTime; return this; } public final void setLatestRestorableTime(Instant latestRestorableTime) { this.latestRestorableTime = latestRestorableTime; } public final Integer getPort() { return port; } @Override public final Builder port(Integer port) { this.port = port; return this; } public final void setPort(Integer port) { this.port = port; } public final String getMasterUsername() { return masterUsername; } @Override public final Builder masterUsername(String masterUsername) { this.masterUsername = masterUsername; return this; } public final void setMasterUsername(String masterUsername) { this.masterUsername = masterUsername; } public final Collection getDbClusterOptionGroupMemberships() { if (dbClusterOptionGroupMemberships instanceof SdkAutoConstructList) { return null; } return dbClusterOptionGroupMemberships != null ? dbClusterOptionGroupMemberships.stream() .map(DBClusterOptionGroupStatus::toBuilder).collect(Collectors.toList()) : null; } @Override public final Builder dbClusterOptionGroupMemberships( Collection dbClusterOptionGroupMemberships) { this.dbClusterOptionGroupMemberships = DBClusterOptionGroupMembershipsCopier.copy(dbClusterOptionGroupMemberships); return this; } @Override @SafeVarargs public final Builder dbClusterOptionGroupMemberships(DBClusterOptionGroupStatus... dbClusterOptionGroupMemberships) { dbClusterOptionGroupMemberships(Arrays.asList(dbClusterOptionGroupMemberships)); return this; } @Override @SafeVarargs public final Builder dbClusterOptionGroupMemberships( Consumer... dbClusterOptionGroupMemberships) { dbClusterOptionGroupMemberships(Stream.of(dbClusterOptionGroupMemberships) .map(c -> DBClusterOptionGroupStatus.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final void setDbClusterOptionGroupMemberships( Collection dbClusterOptionGroupMemberships) { this.dbClusterOptionGroupMemberships = DBClusterOptionGroupMembershipsCopier .copyFromBuilder(dbClusterOptionGroupMemberships); } public final String getPreferredBackupWindow() { return preferredBackupWindow; } @Override public final Builder preferredBackupWindow(String preferredBackupWindow) { this.preferredBackupWindow = preferredBackupWindow; return this; } public final void setPreferredBackupWindow(String preferredBackupWindow) { this.preferredBackupWindow = preferredBackupWindow; } public final String getPreferredMaintenanceWindow() { return preferredMaintenanceWindow; } @Override public final Builder preferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; return this; } public final void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; } public final String getReplicationSourceIdentifier() { return replicationSourceIdentifier; } @Override public final Builder replicationSourceIdentifier(String replicationSourceIdentifier) { this.replicationSourceIdentifier = replicationSourceIdentifier; return this; } public final void setReplicationSourceIdentifier(String replicationSourceIdentifier) { this.replicationSourceIdentifier = replicationSourceIdentifier; } public final Collection getReadReplicaIdentifiers() { if (readReplicaIdentifiers instanceof SdkAutoConstructList) { return null; } return readReplicaIdentifiers; } @Override public final Builder readReplicaIdentifiers(Collection readReplicaIdentifiers) { this.readReplicaIdentifiers = ReadReplicaIdentifierListCopier.copy(readReplicaIdentifiers); return this; } @Override @SafeVarargs public final Builder readReplicaIdentifiers(String... readReplicaIdentifiers) { readReplicaIdentifiers(Arrays.asList(readReplicaIdentifiers)); return this; } public final void setReadReplicaIdentifiers(Collection readReplicaIdentifiers) { this.readReplicaIdentifiers = ReadReplicaIdentifierListCopier.copy(readReplicaIdentifiers); } public final Collection getDbClusterMembers() { if (dbClusterMembers instanceof SdkAutoConstructList) { return null; } return dbClusterMembers != null ? dbClusterMembers.stream().map(DBClusterMember::toBuilder) .collect(Collectors.toList()) : null; } @Override public final Builder dbClusterMembers(Collection dbClusterMembers) { this.dbClusterMembers = DBClusterMemberListCopier.copy(dbClusterMembers); return this; } @Override @SafeVarargs public final Builder dbClusterMembers(DBClusterMember... dbClusterMembers) { dbClusterMembers(Arrays.asList(dbClusterMembers)); return this; } @Override @SafeVarargs public final Builder dbClusterMembers(Consumer... dbClusterMembers) { dbClusterMembers(Stream.of(dbClusterMembers).map(c -> DBClusterMember.builder().applyMutation(c).build()) .collect(Collectors.toList())); return this; } public final void setDbClusterMembers(Collection dbClusterMembers) { this.dbClusterMembers = DBClusterMemberListCopier.copyFromBuilder(dbClusterMembers); } public final Collection getVpcSecurityGroups() { if (vpcSecurityGroups instanceof SdkAutoConstructList) { return null; } return vpcSecurityGroups != null ? vpcSecurityGroups.stream().map(VpcSecurityGroupMembership::toBuilder) .collect(Collectors.toList()) : null; } @Override public final Builder vpcSecurityGroups(Collection vpcSecurityGroups) { this.vpcSecurityGroups = VpcSecurityGroupMembershipListCopier.copy(vpcSecurityGroups); return this; } @Override @SafeVarargs public final Builder vpcSecurityGroups(VpcSecurityGroupMembership... vpcSecurityGroups) { vpcSecurityGroups(Arrays.asList(vpcSecurityGroups)); return this; } @Override @SafeVarargs public final Builder vpcSecurityGroups(Consumer... vpcSecurityGroups) { vpcSecurityGroups(Stream.of(vpcSecurityGroups) .map(c -> VpcSecurityGroupMembership.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final void setVpcSecurityGroups(Collection vpcSecurityGroups) { this.vpcSecurityGroups = VpcSecurityGroupMembershipListCopier.copyFromBuilder(vpcSecurityGroups); } public final String getHostedZoneId() { return hostedZoneId; } @Override public final Builder hostedZoneId(String hostedZoneId) { this.hostedZoneId = hostedZoneId; return this; } public final void setHostedZoneId(String hostedZoneId) { this.hostedZoneId = hostedZoneId; } public final Boolean getStorageEncrypted() { return storageEncrypted; } @Override public final Builder storageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; return this; } public final void setStorageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; } public final String getKmsKeyId() { return kmsKeyId; } @Override public final Builder kmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; return this; } public final void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } public final String getDbClusterResourceId() { return dbClusterResourceId; } @Override public final Builder dbClusterResourceId(String dbClusterResourceId) { this.dbClusterResourceId = dbClusterResourceId; return this; } public final void setDbClusterResourceId(String dbClusterResourceId) { this.dbClusterResourceId = dbClusterResourceId; } public final String getDbClusterArn() { return dbClusterArn; } @Override public final Builder dbClusterArn(String dbClusterArn) { this.dbClusterArn = dbClusterArn; return this; } public final void setDbClusterArn(String dbClusterArn) { this.dbClusterArn = dbClusterArn; } public final Collection getAssociatedRoles() { if (associatedRoles instanceof SdkAutoConstructList) { return null; } return associatedRoles != null ? associatedRoles.stream().map(DBClusterRole::toBuilder).collect(Collectors.toList()) : null; } @Override public final Builder associatedRoles(Collection associatedRoles) { this.associatedRoles = DBClusterRolesCopier.copy(associatedRoles); return this; } @Override @SafeVarargs public final Builder associatedRoles(DBClusterRole... associatedRoles) { associatedRoles(Arrays.asList(associatedRoles)); return this; } @Override @SafeVarargs public final Builder associatedRoles(Consumer... associatedRoles) { associatedRoles(Stream.of(associatedRoles).map(c -> DBClusterRole.builder().applyMutation(c).build()) .collect(Collectors.toList())); return this; } public final void setAssociatedRoles(Collection associatedRoles) { this.associatedRoles = DBClusterRolesCopier.copyFromBuilder(associatedRoles); } public final Boolean getIamDatabaseAuthenticationEnabled() { return iamDatabaseAuthenticationEnabled; } @Override public final Builder iamDatabaseAuthenticationEnabled(Boolean iamDatabaseAuthenticationEnabled) { this.iamDatabaseAuthenticationEnabled = iamDatabaseAuthenticationEnabled; return this; } public final void setIamDatabaseAuthenticationEnabled(Boolean iamDatabaseAuthenticationEnabled) { this.iamDatabaseAuthenticationEnabled = iamDatabaseAuthenticationEnabled; } public final String getCloneGroupId() { return cloneGroupId; } @Override public final Builder cloneGroupId(String cloneGroupId) { this.cloneGroupId = cloneGroupId; return this; } public final void setCloneGroupId(String cloneGroupId) { this.cloneGroupId = cloneGroupId; } public final Instant getClusterCreateTime() { return clusterCreateTime; } @Override public final Builder clusterCreateTime(Instant clusterCreateTime) { this.clusterCreateTime = clusterCreateTime; return this; } public final void setClusterCreateTime(Instant clusterCreateTime) { this.clusterCreateTime = clusterCreateTime; } public final Collection getEnabledCloudwatchLogsExports() { if (enabledCloudwatchLogsExports instanceof SdkAutoConstructList) { return null; } return enabledCloudwatchLogsExports; } @Override public final Builder enabledCloudwatchLogsExports(Collection enabledCloudwatchLogsExports) { this.enabledCloudwatchLogsExports = LogTypeListCopier.copy(enabledCloudwatchLogsExports); return this; } @Override @SafeVarargs public final Builder enabledCloudwatchLogsExports(String... enabledCloudwatchLogsExports) { enabledCloudwatchLogsExports(Arrays.asList(enabledCloudwatchLogsExports)); return this; } public final void setEnabledCloudwatchLogsExports(Collection enabledCloudwatchLogsExports) { this.enabledCloudwatchLogsExports = LogTypeListCopier.copy(enabledCloudwatchLogsExports); } public final Boolean getDeletionProtection() { return deletionProtection; } @Override public final Builder deletionProtection(Boolean deletionProtection) { this.deletionProtection = deletionProtection; return this; } public final void setDeletionProtection(Boolean deletionProtection) { this.deletionProtection = deletionProtection; } @Override public DBCluster build() { return new DBCluster(this); } @Override public List> sdkFields() { return SDK_FIELDS; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy