/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace RDS { namespace Model { /** *

Contains the details of an Amazon RDS DB instance.

This data type is * used as a response element in the operations CreateDBInstance, * CreateDBInstanceReadReplica, DeleteDBInstance, * DescribeDBInstances, ModifyDBInstance, * PromoteReadReplica, RebootDBInstance, * RestoreDBInstanceFromDBSnapshot, * RestoreDBInstanceFromS3, * RestoreDBInstanceToPointInTime, StartDBInstance, and * StopDBInstance.

See Also:

AWS API * Reference

*/ class DBInstance { public: AWS_RDS_API DBInstance(); AWS_RDS_API DBInstance(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API DBInstance& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_RDS_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

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

*/ inline const Aws::String& GetDBInstanceIdentifier() const{ return m_dBInstanceIdentifier; } /** *

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

*/ inline bool DBInstanceIdentifierHasBeenSet() const { return m_dBInstanceIdentifierHasBeenSet; } /** *

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

*/ inline void SetDBInstanceIdentifier(const Aws::String& value) { m_dBInstanceIdentifierHasBeenSet = true; m_dBInstanceIdentifier = value; } /** *

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

*/ inline void SetDBInstanceIdentifier(Aws::String&& value) { m_dBInstanceIdentifierHasBeenSet = true; m_dBInstanceIdentifier = std::move(value); } /** *

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

*/ inline void SetDBInstanceIdentifier(const char* value) { m_dBInstanceIdentifierHasBeenSet = true; m_dBInstanceIdentifier.assign(value); } /** *

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

*/ inline DBInstance& WithDBInstanceIdentifier(const Aws::String& value) { SetDBInstanceIdentifier(value); return *this;} /** *

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

*/ inline DBInstance& WithDBInstanceIdentifier(Aws::String&& value) { SetDBInstanceIdentifier(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithDBInstanceIdentifier(const char* value) { SetDBInstanceIdentifier(value); return *this;} /** *

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

*/ inline const Aws::String& GetDBInstanceClass() const{ return m_dBInstanceClass; } /** *

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

*/ inline bool DBInstanceClassHasBeenSet() const { return m_dBInstanceClassHasBeenSet; } /** *

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

*/ inline void SetDBInstanceClass(const Aws::String& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = value; } /** *

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

*/ inline void SetDBInstanceClass(Aws::String&& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = std::move(value); } /** *

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

*/ inline void SetDBInstanceClass(const char* value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass.assign(value); } /** *

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

*/ inline DBInstance& WithDBInstanceClass(const Aws::String& value) { SetDBInstanceClass(value); return *this;} /** *

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

*/ inline DBInstance& WithDBInstanceClass(Aws::String&& value) { SetDBInstanceClass(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithDBInstanceClass(const char* value) { SetDBInstanceClass(value); return *this;} /** *

The database engine used for this DB instance.

*/ inline const Aws::String& GetEngine() const{ return m_engine; } /** *

The database engine used for this DB instance.

*/ inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; } /** *

The database engine used for this DB instance.

*/ inline void SetEngine(const Aws::String& value) { m_engineHasBeenSet = true; m_engine = value; } /** *

The database engine used for this DB instance.

*/ inline void SetEngine(Aws::String&& value) { m_engineHasBeenSet = true; m_engine = std::move(value); } /** *

The database engine used for this DB instance.

*/ inline void SetEngine(const char* value) { m_engineHasBeenSet = true; m_engine.assign(value); } /** *

The database engine used for this DB instance.

*/ inline DBInstance& WithEngine(const Aws::String& value) { SetEngine(value); return *this;} /** *

The database engine used for this DB instance.

*/ inline DBInstance& WithEngine(Aws::String&& value) { SetEngine(std::move(value)); return *this;} /** *

The database engine used for this DB instance.

*/ inline DBInstance& WithEngine(const char* value) { SetEngine(value); return *this;} /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline const Aws::String& GetDBInstanceStatus() const{ return m_dBInstanceStatus; } /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline bool DBInstanceStatusHasBeenSet() const { return m_dBInstanceStatusHasBeenSet; } /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline void SetDBInstanceStatus(const Aws::String& value) { m_dBInstanceStatusHasBeenSet = true; m_dBInstanceStatus = value; } /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline void SetDBInstanceStatus(Aws::String&& value) { m_dBInstanceStatusHasBeenSet = true; m_dBInstanceStatus = std::move(value); } /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline void SetDBInstanceStatus(const char* value) { m_dBInstanceStatusHasBeenSet = true; m_dBInstanceStatus.assign(value); } /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline DBInstance& WithDBInstanceStatus(const Aws::String& value) { SetDBInstanceStatus(value); return *this;} /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline DBInstance& WithDBInstanceStatus(Aws::String&& value) { SetDBInstanceStatus(std::move(value)); return *this;} /** *

The current state of this database.

For information about DB instance * statuses, see Viewing * DB instance status in the Amazon RDS User Guide.

*/ inline DBInstance& WithDBInstanceStatus(const char* value) { SetDBInstanceStatus(value); return *this;} /** *

The time when a stopped DB instance is restarted automatically.

*/ inline const Aws::Utils::DateTime& GetAutomaticRestartTime() const{ return m_automaticRestartTime; } /** *

The time when a stopped DB instance is restarted automatically.

*/ inline bool AutomaticRestartTimeHasBeenSet() const { return m_automaticRestartTimeHasBeenSet; } /** *

The time when a stopped DB instance is restarted automatically.

*/ inline void SetAutomaticRestartTime(const Aws::Utils::DateTime& value) { m_automaticRestartTimeHasBeenSet = true; m_automaticRestartTime = value; } /** *

The time when a stopped DB instance is restarted automatically.

*/ inline void SetAutomaticRestartTime(Aws::Utils::DateTime&& value) { m_automaticRestartTimeHasBeenSet = true; m_automaticRestartTime = std::move(value); } /** *

The time when a stopped DB instance is restarted automatically.

*/ inline DBInstance& WithAutomaticRestartTime(const Aws::Utils::DateTime& value) { SetAutomaticRestartTime(value); return *this;} /** *

The time when a stopped DB instance is restarted automatically.

*/ inline DBInstance& WithAutomaticRestartTime(Aws::Utils::DateTime&& value) { SetAutomaticRestartTime(std::move(value)); return *this;} /** *

The master username for the DB instance.

*/ inline const Aws::String& GetMasterUsername() const{ return m_masterUsername; } /** *

The master username for the DB instance.

*/ inline bool MasterUsernameHasBeenSet() const { return m_masterUsernameHasBeenSet; } /** *

The master username for the DB instance.

*/ inline void SetMasterUsername(const Aws::String& value) { m_masterUsernameHasBeenSet = true; m_masterUsername = value; } /** *

The master username for the DB instance.

*/ inline void SetMasterUsername(Aws::String&& value) { m_masterUsernameHasBeenSet = true; m_masterUsername = std::move(value); } /** *

The master username for the DB instance.

*/ inline void SetMasterUsername(const char* value) { m_masterUsernameHasBeenSet = true; m_masterUsername.assign(value); } /** *

The master username for the DB instance.

*/ inline DBInstance& WithMasterUsername(const Aws::String& value) { SetMasterUsername(value); return *this;} /** *

The master username for the DB instance.

*/ inline DBInstance& WithMasterUsername(Aws::String&& value) { SetMasterUsername(std::move(value)); return *this;} /** *

The master username for the DB instance.

*/ inline DBInstance& WithMasterUsername(const char* value) { SetMasterUsername(value); return *this;} /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline const Aws::String& GetDBName() const{ return m_dBName; } /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline bool DBNameHasBeenSet() const { return m_dBNameHasBeenSet; } /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline void SetDBName(const Aws::String& value) { m_dBNameHasBeenSet = true; m_dBName = value; } /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline void SetDBName(Aws::String&& value) { m_dBNameHasBeenSet = true; m_dBName = std::move(value); } /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline void SetDBName(const char* value) { m_dBNameHasBeenSet = true; m_dBName.assign(value); } /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline DBInstance& WithDBName(const Aws::String& value) { SetDBName(value); return *this;} /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline DBInstance& WithDBName(Aws::String&& value) { SetDBName(std::move(value)); return *this;} /** *

Contains the initial database name that you provided (if required) when you * created the DB instance. This name is returned for the life of your DB instance. * For an RDS for Oracle CDB instance, the name identifies the PDB rather than the * CDB.

*/ inline DBInstance& WithDBName(const char* value) { SetDBName(value); return *this;} /** *

The connection endpoint for the DB instance.

The endpoint might * not be shown for instances with the status of creating.

*/ inline const Endpoint& GetEndpoint() const{ return m_endpoint; } /** *

The connection endpoint for the DB instance.

The endpoint might * not be shown for instances with the status of creating.

*/ inline bool EndpointHasBeenSet() const { return m_endpointHasBeenSet; } /** *

The connection endpoint for the DB instance.

The endpoint might * not be shown for instances with the status of creating.

*/ inline void SetEndpoint(const Endpoint& value) { m_endpointHasBeenSet = true; m_endpoint = value; } /** *

The connection endpoint for the DB instance.

The endpoint might * not be shown for instances with the status of creating.

*/ inline void SetEndpoint(Endpoint&& value) { m_endpointHasBeenSet = true; m_endpoint = std::move(value); } /** *

The connection endpoint for the DB instance.

The endpoint might * not be shown for instances with the status of creating.

*/ inline DBInstance& WithEndpoint(const Endpoint& value) { SetEndpoint(value); return *this;} /** *

The connection endpoint for the DB instance.

The endpoint might * not be shown for instances with the status of creating.

*/ inline DBInstance& WithEndpoint(Endpoint&& value) { SetEndpoint(std::move(value)); return *this;} /** *

The amount of storage in gibibytes (GiB) allocated for the DB instance.

*/ inline int GetAllocatedStorage() const{ return m_allocatedStorage; } /** *

The amount of storage in gibibytes (GiB) allocated for the DB instance.

*/ inline bool AllocatedStorageHasBeenSet() const { return m_allocatedStorageHasBeenSet; } /** *

The amount of storage in gibibytes (GiB) allocated for the DB instance.

*/ inline void SetAllocatedStorage(int value) { m_allocatedStorageHasBeenSet = true; m_allocatedStorage = value; } /** *

The amount of storage in gibibytes (GiB) allocated for the DB instance.

*/ inline DBInstance& WithAllocatedStorage(int value) { SetAllocatedStorage(value); return *this;} /** *

The date and time when the DB instance was created.

*/ inline const Aws::Utils::DateTime& GetInstanceCreateTime() const{ return m_instanceCreateTime; } /** *

The date and time when the DB instance was created.

*/ inline bool InstanceCreateTimeHasBeenSet() const { return m_instanceCreateTimeHasBeenSet; } /** *

The date and time when the DB instance was created.

*/ inline void SetInstanceCreateTime(const Aws::Utils::DateTime& value) { m_instanceCreateTimeHasBeenSet = true; m_instanceCreateTime = value; } /** *

The date and time when the DB instance was created.

*/ inline void SetInstanceCreateTime(Aws::Utils::DateTime&& value) { m_instanceCreateTimeHasBeenSet = true; m_instanceCreateTime = std::move(value); } /** *

The date and time when the DB instance was created.

*/ inline DBInstance& WithInstanceCreateTime(const Aws::Utils::DateTime& value) { SetInstanceCreateTime(value); return *this;} /** *

The date and time when the DB instance was created.

*/ inline DBInstance& WithInstanceCreateTime(Aws::Utils::DateTime&& value) { SetInstanceCreateTime(std::move(value)); return *this;} /** *

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

*/ inline const Aws::String& GetPreferredBackupWindow() const{ return m_preferredBackupWindow; } /** *

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

*/ inline bool PreferredBackupWindowHasBeenSet() const { return m_preferredBackupWindowHasBeenSet; } /** *

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

*/ inline void SetPreferredBackupWindow(const Aws::String& value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow = value; } /** *

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

*/ inline void SetPreferredBackupWindow(Aws::String&& value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow = std::move(value); } /** *

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

*/ inline void SetPreferredBackupWindow(const char* value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow.assign(value); } /** *

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

*/ inline DBInstance& WithPreferredBackupWindow(const Aws::String& value) { SetPreferredBackupWindow(value); return *this;} /** *

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

*/ inline DBInstance& WithPreferredBackupWindow(Aws::String&& value) { SetPreferredBackupWindow(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithPreferredBackupWindow(const char* value) { SetPreferredBackupWindow(value); return *this;} /** *

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

*/ inline int GetBackupRetentionPeriod() const{ return m_backupRetentionPeriod; } /** *

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

*/ inline bool BackupRetentionPeriodHasBeenSet() const { return m_backupRetentionPeriodHasBeenSet; } /** *

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

*/ inline void SetBackupRetentionPeriod(int value) { m_backupRetentionPeriodHasBeenSet = true; m_backupRetentionPeriod = value; } /** *

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

*/ inline DBInstance& WithBackupRetentionPeriod(int value) { SetBackupRetentionPeriod(value); return *this;} /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline const Aws::Vector& GetDBSecurityGroups() const{ return m_dBSecurityGroups; } /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline bool DBSecurityGroupsHasBeenSet() const { return m_dBSecurityGroupsHasBeenSet; } /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline void SetDBSecurityGroups(const Aws::Vector& value) { m_dBSecurityGroupsHasBeenSet = true; m_dBSecurityGroups = value; } /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline void SetDBSecurityGroups(Aws::Vector&& value) { m_dBSecurityGroupsHasBeenSet = true; m_dBSecurityGroups = std::move(value); } /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline DBInstance& WithDBSecurityGroups(const Aws::Vector& value) { SetDBSecurityGroups(value); return *this;} /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline DBInstance& WithDBSecurityGroups(Aws::Vector&& value) { SetDBSecurityGroups(std::move(value)); return *this;} /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline DBInstance& AddDBSecurityGroups(const DBSecurityGroupMembership& value) { m_dBSecurityGroupsHasBeenSet = true; m_dBSecurityGroups.push_back(value); return *this; } /** *

A list of DB security group elements containing * DBSecurityGroup.Name and DBSecurityGroup.Status * subelements.

*/ inline DBInstance& AddDBSecurityGroups(DBSecurityGroupMembership&& value) { m_dBSecurityGroupsHasBeenSet = true; m_dBSecurityGroups.push_back(std::move(value)); return *this; } /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline const Aws::Vector& GetVpcSecurityGroups() const{ return m_vpcSecurityGroups; } /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline bool VpcSecurityGroupsHasBeenSet() const { return m_vpcSecurityGroupsHasBeenSet; } /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline void SetVpcSecurityGroups(const Aws::Vector& value) { m_vpcSecurityGroupsHasBeenSet = true; m_vpcSecurityGroups = value; } /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline void SetVpcSecurityGroups(Aws::Vector&& value) { m_vpcSecurityGroupsHasBeenSet = true; m_vpcSecurityGroups = std::move(value); } /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline DBInstance& WithVpcSecurityGroups(const Aws::Vector& value) { SetVpcSecurityGroups(value); return *this;} /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline DBInstance& WithVpcSecurityGroups(Aws::Vector&& value) { SetVpcSecurityGroups(std::move(value)); return *this;} /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline DBInstance& AddVpcSecurityGroups(const VpcSecurityGroupMembership& value) { m_vpcSecurityGroupsHasBeenSet = true; m_vpcSecurityGroups.push_back(value); return *this; } /** *

The list of Amazon EC2 VPC security groups that the DB instance belongs * to.

*/ inline DBInstance& AddVpcSecurityGroups(VpcSecurityGroupMembership&& value) { m_vpcSecurityGroupsHasBeenSet = true; m_vpcSecurityGroups.push_back(std::move(value)); return *this; } /** *

The list of DB parameter groups applied to this DB instance.

*/ inline const Aws::Vector& GetDBParameterGroups() const{ return m_dBParameterGroups; } /** *

The list of DB parameter groups applied to this DB instance.

*/ inline bool DBParameterGroupsHasBeenSet() const { return m_dBParameterGroupsHasBeenSet; } /** *

The list of DB parameter groups applied to this DB instance.

*/ inline void SetDBParameterGroups(const Aws::Vector& value) { m_dBParameterGroupsHasBeenSet = true; m_dBParameterGroups = value; } /** *

The list of DB parameter groups applied to this DB instance.

*/ inline void SetDBParameterGroups(Aws::Vector&& value) { m_dBParameterGroupsHasBeenSet = true; m_dBParameterGroups = std::move(value); } /** *

The list of DB parameter groups applied to this DB instance.

*/ inline DBInstance& WithDBParameterGroups(const Aws::Vector& value) { SetDBParameterGroups(value); return *this;} /** *

The list of DB parameter groups applied to this DB instance.

*/ inline DBInstance& WithDBParameterGroups(Aws::Vector&& value) { SetDBParameterGroups(std::move(value)); return *this;} /** *

The list of DB parameter groups applied to this DB instance.

*/ inline DBInstance& AddDBParameterGroups(const DBParameterGroupStatus& value) { m_dBParameterGroupsHasBeenSet = true; m_dBParameterGroups.push_back(value); return *this; } /** *

The list of DB parameter groups applied to this DB instance.

*/ inline DBInstance& AddDBParameterGroups(DBParameterGroupStatus&& value) { m_dBParameterGroupsHasBeenSet = true; m_dBParameterGroups.push_back(std::move(value)); return *this; } /** *

The name of the Availability Zone where the DB instance is located.

*/ inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; } /** *

The name of the Availability Zone where the DB instance is located.

*/ inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; } /** *

The name of the Availability Zone where the DB instance is located.

*/ inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; } /** *

The name of the Availability Zone where the DB instance is located.

*/ inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); } /** *

The name of the Availability Zone where the DB instance is located.

*/ inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); } /** *

The name of the Availability Zone where the DB instance is located.

*/ inline DBInstance& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;} /** *

The name of the Availability Zone where the DB instance is located.

*/ inline DBInstance& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;} /** *

The name of the Availability Zone where the DB instance is located.

*/ inline DBInstance& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;} /** *

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

*/ inline const DBSubnetGroup& GetDBSubnetGroup() const{ return m_dBSubnetGroup; } /** *

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

*/ inline bool DBSubnetGroupHasBeenSet() const { return m_dBSubnetGroupHasBeenSet; } /** *

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

*/ inline void SetDBSubnetGroup(const DBSubnetGroup& value) { m_dBSubnetGroupHasBeenSet = true; m_dBSubnetGroup = value; } /** *

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

*/ inline void SetDBSubnetGroup(DBSubnetGroup&& value) { m_dBSubnetGroupHasBeenSet = true; m_dBSubnetGroup = std::move(value); } /** *

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

*/ inline DBInstance& WithDBSubnetGroup(const DBSubnetGroup& value) { SetDBSubnetGroup(value); return *this;} /** *

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

*/ inline DBInstance& WithDBSubnetGroup(DBSubnetGroup&& value) { SetDBSubnetGroup(std::move(value)); return *this;} /** *

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

*/ inline const Aws::String& GetPreferredMaintenanceWindow() const{ return m_preferredMaintenanceWindow; } /** *

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

*/ inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; } /** *

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

*/ inline void SetPreferredMaintenanceWindow(const Aws::String& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = value; } /** *

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

*/ inline void SetPreferredMaintenanceWindow(Aws::String&& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = std::move(value); } /** *

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

*/ inline void SetPreferredMaintenanceWindow(const char* value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow.assign(value); } /** *

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

*/ inline DBInstance& WithPreferredMaintenanceWindow(const Aws::String& value) { SetPreferredMaintenanceWindow(value); return *this;} /** *

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

*/ inline DBInstance& WithPreferredMaintenanceWindow(Aws::String&& value) { SetPreferredMaintenanceWindow(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithPreferredMaintenanceWindow(const char* value) { SetPreferredMaintenanceWindow(value); return *this;} /** *

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

*/ inline const PendingModifiedValues& GetPendingModifiedValues() const{ return m_pendingModifiedValues; } /** *

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

*/ inline bool PendingModifiedValuesHasBeenSet() const { return m_pendingModifiedValuesHasBeenSet; } /** *

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

*/ inline void SetPendingModifiedValues(const PendingModifiedValues& value) { m_pendingModifiedValuesHasBeenSet = true; m_pendingModifiedValues = value; } /** *

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

*/ inline void SetPendingModifiedValues(PendingModifiedValues&& value) { m_pendingModifiedValuesHasBeenSet = true; m_pendingModifiedValues = std::move(value); } /** *

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

*/ inline DBInstance& WithPendingModifiedValues(const PendingModifiedValues& value) { SetPendingModifiedValues(value); return *this;} /** *

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

*/ inline DBInstance& WithPendingModifiedValues(PendingModifiedValues&& value) { SetPendingModifiedValues(std::move(value)); return *this;} /** *

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

*/ inline const Aws::Utils::DateTime& GetLatestRestorableTime() const{ return m_latestRestorableTime; } /** *

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

*/ inline bool LatestRestorableTimeHasBeenSet() const { return m_latestRestorableTimeHasBeenSet; } /** *

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

*/ inline void SetLatestRestorableTime(const Aws::Utils::DateTime& value) { m_latestRestorableTimeHasBeenSet = true; m_latestRestorableTime = value; } /** *

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

*/ inline void SetLatestRestorableTime(Aws::Utils::DateTime&& value) { m_latestRestorableTimeHasBeenSet = true; m_latestRestorableTime = std::move(value); } /** *

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

*/ inline DBInstance& WithLatestRestorableTime(const Aws::Utils::DateTime& value) { SetLatestRestorableTime(value); return *this;} /** *

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

*/ inline DBInstance& WithLatestRestorableTime(Aws::Utils::DateTime&& value) { SetLatestRestorableTime(std::move(value)); return *this;} /** *

Indicates whether the DB instance is a Multi-AZ deployment. This setting * doesn't apply to RDS Custom DB instances.

*/ inline bool GetMultiAZ() const{ return m_multiAZ; } /** *

Indicates whether the DB instance is a Multi-AZ deployment. This setting * doesn't apply to RDS Custom DB instances.

*/ inline bool MultiAZHasBeenSet() const { return m_multiAZHasBeenSet; } /** *

Indicates whether the DB instance is a Multi-AZ deployment. This setting * doesn't apply to RDS Custom DB instances.

*/ inline void SetMultiAZ(bool value) { m_multiAZHasBeenSet = true; m_multiAZ = value; } /** *

Indicates whether the DB instance is a Multi-AZ deployment. This setting * doesn't apply to RDS Custom DB instances.

*/ inline DBInstance& WithMultiAZ(bool value) { SetMultiAZ(value); return *this;} /** *

The version of the database engine.

*/ inline const Aws::String& GetEngineVersion() const{ return m_engineVersion; } /** *

The version of the database engine.

*/ inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; } /** *

The version of the database engine.

*/ inline void SetEngineVersion(const Aws::String& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; } /** *

The version of the database engine.

*/ inline void SetEngineVersion(Aws::String&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = std::move(value); } /** *

The version of the database engine.

*/ inline void SetEngineVersion(const char* value) { m_engineVersionHasBeenSet = true; m_engineVersion.assign(value); } /** *

The version of the database engine.

*/ inline DBInstance& WithEngineVersion(const Aws::String& value) { SetEngineVersion(value); return *this;} /** *

The version of the database engine.

*/ inline DBInstance& WithEngineVersion(Aws::String&& value) { SetEngineVersion(std::move(value)); return *this;} /** *

The version of the database engine.

*/ inline DBInstance& WithEngineVersion(const char* value) { SetEngineVersion(value); return *this;} /** *

Indicates whether minor version patches are applied automatically.

*/ inline bool GetAutoMinorVersionUpgrade() const{ return m_autoMinorVersionUpgrade; } /** *

Indicates whether minor version patches are applied automatically.

*/ inline bool AutoMinorVersionUpgradeHasBeenSet() const { return m_autoMinorVersionUpgradeHasBeenSet; } /** *

Indicates whether minor version patches are applied automatically.

*/ inline void SetAutoMinorVersionUpgrade(bool value) { m_autoMinorVersionUpgradeHasBeenSet = true; m_autoMinorVersionUpgrade = value; } /** *

Indicates whether minor version patches are applied automatically.

*/ inline DBInstance& WithAutoMinorVersionUpgrade(bool value) { SetAutoMinorVersionUpgrade(value); return *this;} /** *

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

*/ inline const Aws::String& GetReadReplicaSourceDBInstanceIdentifier() const{ return m_readReplicaSourceDBInstanceIdentifier; } /** *

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

*/ inline bool ReadReplicaSourceDBInstanceIdentifierHasBeenSet() const { return m_readReplicaSourceDBInstanceIdentifierHasBeenSet; } /** *

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

*/ inline void SetReadReplicaSourceDBInstanceIdentifier(const Aws::String& value) { m_readReplicaSourceDBInstanceIdentifierHasBeenSet = true; m_readReplicaSourceDBInstanceIdentifier = value; } /** *

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

*/ inline void SetReadReplicaSourceDBInstanceIdentifier(Aws::String&& value) { m_readReplicaSourceDBInstanceIdentifierHasBeenSet = true; m_readReplicaSourceDBInstanceIdentifier = std::move(value); } /** *

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

*/ inline void SetReadReplicaSourceDBInstanceIdentifier(const char* value) { m_readReplicaSourceDBInstanceIdentifierHasBeenSet = true; m_readReplicaSourceDBInstanceIdentifier.assign(value); } /** *

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

*/ inline DBInstance& WithReadReplicaSourceDBInstanceIdentifier(const Aws::String& value) { SetReadReplicaSourceDBInstanceIdentifier(value); return *this;} /** *

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

*/ inline DBInstance& WithReadReplicaSourceDBInstanceIdentifier(Aws::String&& value) { SetReadReplicaSourceDBInstanceIdentifier(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithReadReplicaSourceDBInstanceIdentifier(const char* value) { SetReadReplicaSourceDBInstanceIdentifier(value); return *this;} /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline const Aws::Vector& GetReadReplicaDBInstanceIdentifiers() const{ return m_readReplicaDBInstanceIdentifiers; } /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline bool ReadReplicaDBInstanceIdentifiersHasBeenSet() const { return m_readReplicaDBInstanceIdentifiersHasBeenSet; } /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline void SetReadReplicaDBInstanceIdentifiers(const Aws::Vector& value) { m_readReplicaDBInstanceIdentifiersHasBeenSet = true; m_readReplicaDBInstanceIdentifiers = value; } /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline void SetReadReplicaDBInstanceIdentifiers(Aws::Vector&& value) { m_readReplicaDBInstanceIdentifiersHasBeenSet = true; m_readReplicaDBInstanceIdentifiers = std::move(value); } /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline DBInstance& WithReadReplicaDBInstanceIdentifiers(const Aws::Vector& value) { SetReadReplicaDBInstanceIdentifiers(value); return *this;} /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline DBInstance& WithReadReplicaDBInstanceIdentifiers(Aws::Vector&& value) { SetReadReplicaDBInstanceIdentifiers(std::move(value)); return *this;} /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline DBInstance& AddReadReplicaDBInstanceIdentifiers(const Aws::String& value) { m_readReplicaDBInstanceIdentifiersHasBeenSet = true; m_readReplicaDBInstanceIdentifiers.push_back(value); return *this; } /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline DBInstance& AddReadReplicaDBInstanceIdentifiers(Aws::String&& value) { m_readReplicaDBInstanceIdentifiersHasBeenSet = true; m_readReplicaDBInstanceIdentifiers.push_back(std::move(value)); return *this; } /** *

The identifiers of the read replicas associated with this DB instance.

*/ inline DBInstance& AddReadReplicaDBInstanceIdentifiers(const char* value) { m_readReplicaDBInstanceIdentifiersHasBeenSet = true; m_readReplicaDBInstanceIdentifiers.push_back(value); return *this; } /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline const Aws::Vector& GetReadReplicaDBClusterIdentifiers() const{ return m_readReplicaDBClusterIdentifiers; } /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline bool ReadReplicaDBClusterIdentifiersHasBeenSet() const { return m_readReplicaDBClusterIdentifiersHasBeenSet; } /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline void SetReadReplicaDBClusterIdentifiers(const Aws::Vector& value) { m_readReplicaDBClusterIdentifiersHasBeenSet = true; m_readReplicaDBClusterIdentifiers = value; } /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline void SetReadReplicaDBClusterIdentifiers(Aws::Vector&& value) { m_readReplicaDBClusterIdentifiersHasBeenSet = true; m_readReplicaDBClusterIdentifiers = std::move(value); } /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline DBInstance& WithReadReplicaDBClusterIdentifiers(const Aws::Vector& value) { SetReadReplicaDBClusterIdentifiers(value); return *this;} /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline DBInstance& WithReadReplicaDBClusterIdentifiers(Aws::Vector&& value) { SetReadReplicaDBClusterIdentifiers(std::move(value)); return *this;} /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline DBInstance& AddReadReplicaDBClusterIdentifiers(const Aws::String& value) { m_readReplicaDBClusterIdentifiersHasBeenSet = true; m_readReplicaDBClusterIdentifiers.push_back(value); return *this; } /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline DBInstance& AddReadReplicaDBClusterIdentifiers(Aws::String&& value) { m_readReplicaDBClusterIdentifiersHasBeenSet = true; m_readReplicaDBClusterIdentifiers.push_back(std::move(value)); return *this; } /** *

The identifiers of Aurora DB clusters to which the RDS DB instance is * replicated as a read replica. For example, when you create an Aurora read * replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the * Aurora read replica is shown. This output doesn't contain information about * cross-Region Aurora read replicas.

Currently, each RDS DB instance * can have only one Aurora read replica.

*/ inline DBInstance& AddReadReplicaDBClusterIdentifiers(const char* value) { m_readReplicaDBClusterIdentifiersHasBeenSet = true; m_readReplicaDBClusterIdentifiers.push_back(value); return *this; } /** *

The open mode of an Oracle read replica. The default is * open-read-only. For more information, see Working * with Oracle Read Replicas for Amazon RDS in the Amazon RDS User * Guide.

This attribute is only supported in RDS for Oracle.

* */ inline const ReplicaMode& GetReplicaMode() const{ return m_replicaMode; } /** *

The open mode of an Oracle read replica. The default is * open-read-only. For more information, see Working * with Oracle Read Replicas for Amazon RDS in the Amazon RDS User * Guide.

This attribute is only supported in RDS for Oracle.

* */ inline bool ReplicaModeHasBeenSet() const { return m_replicaModeHasBeenSet; } /** *

The open mode of an Oracle read replica. The default is * open-read-only. For more information, see Working * with Oracle Read Replicas for Amazon RDS in the Amazon RDS User * Guide.

This attribute is only supported in RDS for Oracle.

* */ inline void SetReplicaMode(const ReplicaMode& value) { m_replicaModeHasBeenSet = true; m_replicaMode = value; } /** *

The open mode of an Oracle read replica. The default is * open-read-only. For more information, see Working * with Oracle Read Replicas for Amazon RDS in the Amazon RDS User * Guide.

This attribute is only supported in RDS for Oracle.

* */ inline void SetReplicaMode(ReplicaMode&& value) { m_replicaModeHasBeenSet = true; m_replicaMode = std::move(value); } /** *

The open mode of an Oracle read replica. The default is * open-read-only. For more information, see Working * with Oracle Read Replicas for Amazon RDS in the Amazon RDS User * Guide.

This attribute is only supported in RDS for Oracle.

* */ inline DBInstance& WithReplicaMode(const ReplicaMode& value) { SetReplicaMode(value); return *this;} /** *

The open mode of an Oracle read replica. The default is * open-read-only. For more information, see Working * with Oracle Read Replicas for Amazon RDS in the Amazon RDS User * Guide.

This attribute is only supported in RDS for Oracle.

* */ inline DBInstance& WithReplicaMode(ReplicaMode&& value) { SetReplicaMode(std::move(value)); return *this;} /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline const Aws::String& GetLicenseModel() const{ return m_licenseModel; } /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline bool LicenseModelHasBeenSet() const { return m_licenseModelHasBeenSet; } /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline void SetLicenseModel(const Aws::String& value) { m_licenseModelHasBeenSet = true; m_licenseModel = value; } /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline void SetLicenseModel(Aws::String&& value) { m_licenseModelHasBeenSet = true; m_licenseModel = std::move(value); } /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline void SetLicenseModel(const char* value) { m_licenseModelHasBeenSet = true; m_licenseModel.assign(value); } /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline DBInstance& WithLicenseModel(const Aws::String& value) { SetLicenseModel(value); return *this;} /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline DBInstance& WithLicenseModel(Aws::String&& value) { SetLicenseModel(std::move(value)); return *this;} /** *

The license model information for this DB instance. This setting doesn't * apply to RDS Custom DB instances.

*/ inline DBInstance& WithLicenseModel(const char* value) { SetLicenseModel(value); return *this;} /** *

The Provisioned IOPS (I/O operations per second) value for the DB * instance.

*/ inline int GetIops() const{ return m_iops; } /** *

The Provisioned IOPS (I/O operations per second) value for the DB * instance.

*/ inline bool IopsHasBeenSet() const { return m_iopsHasBeenSet; } /** *

The Provisioned IOPS (I/O operations per second) value for the DB * instance.

*/ inline void SetIops(int value) { m_iopsHasBeenSet = true; m_iops = value; } /** *

The Provisioned IOPS (I/O operations per second) value for the DB * instance.

*/ inline DBInstance& WithIops(int value) { SetIops(value); return *this;} /** *

The list of option group memberships for this DB instance.

*/ inline const Aws::Vector& GetOptionGroupMemberships() const{ return m_optionGroupMemberships; } /** *

The list of option group memberships for this DB instance.

*/ inline bool OptionGroupMembershipsHasBeenSet() const { return m_optionGroupMembershipsHasBeenSet; } /** *

The list of option group memberships for this DB instance.

*/ inline void SetOptionGroupMemberships(const Aws::Vector& value) { m_optionGroupMembershipsHasBeenSet = true; m_optionGroupMemberships = value; } /** *

The list of option group memberships for this DB instance.

*/ inline void SetOptionGroupMemberships(Aws::Vector&& value) { m_optionGroupMembershipsHasBeenSet = true; m_optionGroupMemberships = std::move(value); } /** *

The list of option group memberships for this DB instance.

*/ inline DBInstance& WithOptionGroupMemberships(const Aws::Vector& value) { SetOptionGroupMemberships(value); return *this;} /** *

The list of option group memberships for this DB instance.

*/ inline DBInstance& WithOptionGroupMemberships(Aws::Vector&& value) { SetOptionGroupMemberships(std::move(value)); return *this;} /** *

The list of option group memberships for this DB instance.

*/ inline DBInstance& AddOptionGroupMemberships(const OptionGroupMembership& value) { m_optionGroupMembershipsHasBeenSet = true; m_optionGroupMemberships.push_back(value); return *this; } /** *

The list of option group memberships for this DB instance.

*/ inline DBInstance& AddOptionGroupMemberships(OptionGroupMembership&& value) { m_optionGroupMembershipsHasBeenSet = true; m_optionGroupMemberships.push_back(std::move(value)); return *this; } /** *

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

*/ inline const Aws::String& GetCharacterSetName() const{ return m_characterSetName; } /** *

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

*/ inline bool CharacterSetNameHasBeenSet() const { return m_characterSetNameHasBeenSet; } /** *

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

*/ inline void SetCharacterSetName(const Aws::String& value) { m_characterSetNameHasBeenSet = true; m_characterSetName = value; } /** *

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

*/ inline void SetCharacterSetName(Aws::String&& value) { m_characterSetNameHasBeenSet = true; m_characterSetName = std::move(value); } /** *

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

*/ inline void SetCharacterSetName(const char* value) { m_characterSetNameHasBeenSet = true; m_characterSetName.assign(value); } /** *

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

*/ inline DBInstance& WithCharacterSetName(const Aws::String& value) { SetCharacterSetName(value); return *this;} /** *

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

*/ inline DBInstance& WithCharacterSetName(Aws::String&& value) { SetCharacterSetName(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithCharacterSetName(const char* value) { SetCharacterSetName(value); return *this;} /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline const Aws::String& GetNcharCharacterSetName() const{ return m_ncharCharacterSetName; } /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline bool NcharCharacterSetNameHasBeenSet() const { return m_ncharCharacterSetNameHasBeenSet; } /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline void SetNcharCharacterSetName(const Aws::String& value) { m_ncharCharacterSetNameHasBeenSet = true; m_ncharCharacterSetName = value; } /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline void SetNcharCharacterSetName(Aws::String&& value) { m_ncharCharacterSetNameHasBeenSet = true; m_ncharCharacterSetName = std::move(value); } /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline void SetNcharCharacterSetName(const char* value) { m_ncharCharacterSetNameHasBeenSet = true; m_ncharCharacterSetName.assign(value); } /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline DBInstance& WithNcharCharacterSetName(const Aws::String& value) { SetNcharCharacterSetName(value); return *this;} /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline DBInstance& WithNcharCharacterSetName(Aws::String&& value) { SetNcharCharacterSetName(std::move(value)); return *this;} /** *

The name of the NCHAR character set for the Oracle DB instance. This * character set specifies the Unicode encoding for data stored in table columns of * type NCHAR, NCLOB, or NVARCHAR2.

*/ inline DBInstance& WithNcharCharacterSetName(const char* value) { SetNcharCharacterSetName(value); return *this;} /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline const Aws::String& GetSecondaryAvailabilityZone() const{ return m_secondaryAvailabilityZone; } /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline bool SecondaryAvailabilityZoneHasBeenSet() const { return m_secondaryAvailabilityZoneHasBeenSet; } /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline void SetSecondaryAvailabilityZone(const Aws::String& value) { m_secondaryAvailabilityZoneHasBeenSet = true; m_secondaryAvailabilityZone = value; } /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline void SetSecondaryAvailabilityZone(Aws::String&& value) { m_secondaryAvailabilityZoneHasBeenSet = true; m_secondaryAvailabilityZone = std::move(value); } /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline void SetSecondaryAvailabilityZone(const char* value) { m_secondaryAvailabilityZoneHasBeenSet = true; m_secondaryAvailabilityZone.assign(value); } /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline DBInstance& WithSecondaryAvailabilityZone(const Aws::String& value) { SetSecondaryAvailabilityZone(value); return *this;} /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline DBInstance& WithSecondaryAvailabilityZone(Aws::String&& value) { SetSecondaryAvailabilityZone(std::move(value)); return *this;} /** *

If present, specifies the name of the secondary Availability Zone for a DB * instance with multi-AZ support.

*/ inline DBInstance& WithSecondaryAvailabilityZone(const char* value) { SetSecondaryAvailabilityZone(value); return *this;} /** *

Indicates whether the DB instance is publicly accessible.

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

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

For more information, see * CreateDBInstance.

*/ inline bool GetPubliclyAccessible() const{ return m_publiclyAccessible; } /** *

Indicates whether the DB instance is publicly accessible.

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

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

For more information, see * CreateDBInstance.

*/ inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; } /** *

Indicates whether the DB instance is publicly accessible.

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

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

For more information, see * CreateDBInstance.

*/ inline void SetPubliclyAccessible(bool value) { m_publiclyAccessibleHasBeenSet = true; m_publiclyAccessible = value; } /** *

Indicates whether the DB instance is publicly accessible.

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

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

For more information, see * CreateDBInstance.

*/ inline DBInstance& WithPubliclyAccessible(bool value) { SetPubliclyAccessible(value); return *this;} /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline const Aws::Vector& GetStatusInfos() const{ return m_statusInfos; } /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline bool StatusInfosHasBeenSet() const { return m_statusInfosHasBeenSet; } /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline void SetStatusInfos(const Aws::Vector& value) { m_statusInfosHasBeenSet = true; m_statusInfos = value; } /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline void SetStatusInfos(Aws::Vector&& value) { m_statusInfosHasBeenSet = true; m_statusInfos = std::move(value); } /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline DBInstance& WithStatusInfos(const Aws::Vector& value) { SetStatusInfos(value); return *this;} /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline DBInstance& WithStatusInfos(Aws::Vector&& value) { SetStatusInfos(std::move(value)); return *this;} /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline DBInstance& AddStatusInfos(const DBInstanceStatusInfo& value) { m_statusInfosHasBeenSet = true; m_statusInfos.push_back(value); return *this; } /** *

The status of a read replica. If the DB instance isn't a read replica, the * value is blank.

*/ inline DBInstance& AddStatusInfos(DBInstanceStatusInfo&& value) { m_statusInfosHasBeenSet = true; m_statusInfos.push_back(std::move(value)); return *this; } /** *

The storage type associated with the DB instance.

*/ inline const Aws::String& GetStorageType() const{ return m_storageType; } /** *

The storage type associated with the DB instance.

*/ inline bool StorageTypeHasBeenSet() const { return m_storageTypeHasBeenSet; } /** *

The storage type associated with the DB instance.

*/ inline void SetStorageType(const Aws::String& value) { m_storageTypeHasBeenSet = true; m_storageType = value; } /** *

The storage type associated with the DB instance.

*/ inline void SetStorageType(Aws::String&& value) { m_storageTypeHasBeenSet = true; m_storageType = std::move(value); } /** *

The storage type associated with the DB instance.

*/ inline void SetStorageType(const char* value) { m_storageTypeHasBeenSet = true; m_storageType.assign(value); } /** *

The storage type associated with the DB instance.

*/ inline DBInstance& WithStorageType(const Aws::String& value) { SetStorageType(value); return *this;} /** *

The storage type associated with the DB instance.

*/ inline DBInstance& WithStorageType(Aws::String&& value) { SetStorageType(std::move(value)); return *this;} /** *

The storage type associated with the DB instance.

*/ inline DBInstance& WithStorageType(const char* value) { SetStorageType(value); return *this;} /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline const Aws::String& GetTdeCredentialArn() const{ return m_tdeCredentialArn; } /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline bool TdeCredentialArnHasBeenSet() const { return m_tdeCredentialArnHasBeenSet; } /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline void SetTdeCredentialArn(const Aws::String& value) { m_tdeCredentialArnHasBeenSet = true; m_tdeCredentialArn = value; } /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline void SetTdeCredentialArn(Aws::String&& value) { m_tdeCredentialArnHasBeenSet = true; m_tdeCredentialArn = std::move(value); } /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline void SetTdeCredentialArn(const char* value) { m_tdeCredentialArnHasBeenSet = true; m_tdeCredentialArn.assign(value); } /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline DBInstance& WithTdeCredentialArn(const Aws::String& value) { SetTdeCredentialArn(value); return *this;} /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline DBInstance& WithTdeCredentialArn(Aws::String&& value) { SetTdeCredentialArn(std::move(value)); return *this;} /** *

The ARN from the key store with which the instance is associated for TDE * encryption.

*/ inline DBInstance& WithTdeCredentialArn(const char* value) { SetTdeCredentialArn(value); return *this;} /** *

The port that the DB instance listens on. If the DB instance is part of a DB * cluster, this can be a different port than the DB cluster port.

*/ inline int GetDbInstancePort() const{ return m_dbInstancePort; } /** *

The port that the DB instance listens on. If the DB instance is part of a DB * cluster, this can be a different port than the DB cluster port.

*/ inline bool DbInstancePortHasBeenSet() const { return m_dbInstancePortHasBeenSet; } /** *

The port that the DB instance listens on. If the DB instance is part of a DB * cluster, this can be a different port than the DB cluster port.

*/ inline void SetDbInstancePort(int value) { m_dbInstancePortHasBeenSet = true; m_dbInstancePort = value; } /** *

The port that the DB instance listens on. If the DB instance is part of a DB * cluster, this can be a different port than the DB cluster port.

*/ inline DBInstance& WithDbInstancePort(int value) { SetDbInstancePort(value); return *this;} /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline const Aws::String& GetDBClusterIdentifier() const{ return m_dBClusterIdentifier; } /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline bool DBClusterIdentifierHasBeenSet() const { return m_dBClusterIdentifierHasBeenSet; } /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline void SetDBClusterIdentifier(const Aws::String& value) { m_dBClusterIdentifierHasBeenSet = true; m_dBClusterIdentifier = value; } /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline void SetDBClusterIdentifier(Aws::String&& value) { m_dBClusterIdentifierHasBeenSet = true; m_dBClusterIdentifier = std::move(value); } /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline void SetDBClusterIdentifier(const char* value) { m_dBClusterIdentifierHasBeenSet = true; m_dBClusterIdentifier.assign(value); } /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline DBInstance& WithDBClusterIdentifier(const Aws::String& value) { SetDBClusterIdentifier(value); return *this;} /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline DBInstance& WithDBClusterIdentifier(Aws::String&& value) { SetDBClusterIdentifier(std::move(value)); return *this;} /** *

If the DB instance is a member of a DB cluster, indicates the name of the DB * cluster that the DB instance is a member of.

*/ inline DBInstance& WithDBClusterIdentifier(const char* value) { SetDBClusterIdentifier(value); return *this;} /** *

Indicates whether the DB instance is encrypted.

*/ inline bool GetStorageEncrypted() const{ return m_storageEncrypted; } /** *

Indicates whether the DB instance is encrypted.

*/ inline bool StorageEncryptedHasBeenSet() const { return m_storageEncryptedHasBeenSet; } /** *

Indicates whether the DB instance is encrypted.

*/ inline void SetStorageEncrypted(bool value) { m_storageEncryptedHasBeenSet = true; m_storageEncrypted = value; } /** *

Indicates whether the DB instance is encrypted.

*/ inline DBInstance& WithStorageEncrypted(bool value) { SetStorageEncrypted(value); return *this;} /** *

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

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

*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *

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

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

*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *

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

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

*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *

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

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

*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *

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

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

*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *

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

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

*/ inline DBInstance& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *

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

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

*/ inline DBInstance& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *

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

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

*/ inline DBInstance& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *

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

*/ inline const Aws::String& GetDbiResourceId() const{ return m_dbiResourceId; } /** *

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

*/ inline bool DbiResourceIdHasBeenSet() const { return m_dbiResourceIdHasBeenSet; } /** *

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

*/ inline void SetDbiResourceId(const Aws::String& value) { m_dbiResourceIdHasBeenSet = true; m_dbiResourceId = value; } /** *

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

*/ inline void SetDbiResourceId(Aws::String&& value) { m_dbiResourceIdHasBeenSet = true; m_dbiResourceId = std::move(value); } /** *

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

*/ inline void SetDbiResourceId(const char* value) { m_dbiResourceIdHasBeenSet = true; m_dbiResourceId.assign(value); } /** *

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

*/ inline DBInstance& WithDbiResourceId(const Aws::String& value) { SetDbiResourceId(value); return *this;} /** *

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

*/ inline DBInstance& WithDbiResourceId(Aws::String&& value) { SetDbiResourceId(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithDbiResourceId(const char* value) { SetDbiResourceId(value); return *this;} /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline const Aws::String& GetCACertificateIdentifier() const{ return m_cACertificateIdentifier; } /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline bool CACertificateIdentifierHasBeenSet() const { return m_cACertificateIdentifierHasBeenSet; } /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline void SetCACertificateIdentifier(const Aws::String& value) { m_cACertificateIdentifierHasBeenSet = true; m_cACertificateIdentifier = value; } /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline void SetCACertificateIdentifier(Aws::String&& value) { m_cACertificateIdentifierHasBeenSet = true; m_cACertificateIdentifier = std::move(value); } /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline void SetCACertificateIdentifier(const char* value) { m_cACertificateIdentifierHasBeenSet = true; m_cACertificateIdentifier.assign(value); } /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline DBInstance& WithCACertificateIdentifier(const Aws::String& value) { SetCACertificateIdentifier(value); return *this;} /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline DBInstance& WithCACertificateIdentifier(Aws::String&& value) { SetCACertificateIdentifier(std::move(value)); return *this;} /** *

The identifier of the CA certificate for this DB instance.

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

*/ inline DBInstance& WithCACertificateIdentifier(const char* value) { SetCACertificateIdentifier(value); return *this;} /** *

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

*/ inline const Aws::Vector& GetDomainMemberships() const{ return m_domainMemberships; } /** *

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

*/ inline bool DomainMembershipsHasBeenSet() const { return m_domainMembershipsHasBeenSet; } /** *

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

*/ inline void SetDomainMemberships(const Aws::Vector& value) { m_domainMembershipsHasBeenSet = true; m_domainMemberships = value; } /** *

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

*/ inline void SetDomainMemberships(Aws::Vector&& value) { m_domainMembershipsHasBeenSet = true; m_domainMemberships = std::move(value); } /** *

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

*/ inline DBInstance& WithDomainMemberships(const Aws::Vector& value) { SetDomainMemberships(value); return *this;} /** *

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

*/ inline DBInstance& WithDomainMemberships(Aws::Vector&& value) { SetDomainMemberships(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& AddDomainMemberships(const DomainMembership& value) { m_domainMembershipsHasBeenSet = true; m_domainMemberships.push_back(value); return *this; } /** *

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

*/ inline DBInstance& AddDomainMemberships(DomainMembership&& value) { m_domainMembershipsHasBeenSet = true; m_domainMemberships.push_back(std::move(value)); return *this; } /** *

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

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

*/ inline bool GetCopyTagsToSnapshot() const{ return m_copyTagsToSnapshot; } /** *

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

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

*/ inline bool CopyTagsToSnapshotHasBeenSet() const { return m_copyTagsToSnapshotHasBeenSet; } /** *

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

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

*/ inline void SetCopyTagsToSnapshot(bool value) { m_copyTagsToSnapshotHasBeenSet = true; m_copyTagsToSnapshot = value; } /** *

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

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

*/ inline DBInstance& WithCopyTagsToSnapshot(bool value) { SetCopyTagsToSnapshot(value); return *this;} /** *

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

*/ inline int GetMonitoringInterval() const{ return m_monitoringInterval; } /** *

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

*/ inline bool MonitoringIntervalHasBeenSet() const { return m_monitoringIntervalHasBeenSet; } /** *

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

*/ inline void SetMonitoringInterval(int value) { m_monitoringIntervalHasBeenSet = true; m_monitoringInterval = value; } /** *

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

*/ inline DBInstance& WithMonitoringInterval(int value) { SetMonitoringInterval(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline const Aws::String& GetEnhancedMonitoringResourceArn() const{ return m_enhancedMonitoringResourceArn; } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline bool EnhancedMonitoringResourceArnHasBeenSet() const { return m_enhancedMonitoringResourceArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline void SetEnhancedMonitoringResourceArn(const Aws::String& value) { m_enhancedMonitoringResourceArnHasBeenSet = true; m_enhancedMonitoringResourceArn = value; } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline void SetEnhancedMonitoringResourceArn(Aws::String&& value) { m_enhancedMonitoringResourceArnHasBeenSet = true; m_enhancedMonitoringResourceArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline void SetEnhancedMonitoringResourceArn(const char* value) { m_enhancedMonitoringResourceArnHasBeenSet = true; m_enhancedMonitoringResourceArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline DBInstance& WithEnhancedMonitoringResourceArn(const Aws::String& value) { SetEnhancedMonitoringResourceArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline DBInstance& WithEnhancedMonitoringResourceArn(Aws::String&& value) { SetEnhancedMonitoringResourceArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that * receives the Enhanced Monitoring metrics data for the DB instance.

*/ inline DBInstance& WithEnhancedMonitoringResourceArn(const char* value) { SetEnhancedMonitoringResourceArn(value); return *this;} /** *

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

*/ inline const Aws::String& GetMonitoringRoleArn() const{ return m_monitoringRoleArn; } /** *

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

*/ inline bool MonitoringRoleArnHasBeenSet() const { return m_monitoringRoleArnHasBeenSet; } /** *

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

*/ inline void SetMonitoringRoleArn(const Aws::String& value) { m_monitoringRoleArnHasBeenSet = true; m_monitoringRoleArn = value; } /** *

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

*/ inline void SetMonitoringRoleArn(Aws::String&& value) { m_monitoringRoleArnHasBeenSet = true; m_monitoringRoleArn = std::move(value); } /** *

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

*/ inline void SetMonitoringRoleArn(const char* value) { m_monitoringRoleArnHasBeenSet = true; m_monitoringRoleArn.assign(value); } /** *

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

*/ inline DBInstance& WithMonitoringRoleArn(const Aws::String& value) { SetMonitoringRoleArn(value); return *this;} /** *

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

*/ inline DBInstance& WithMonitoringRoleArn(Aws::String&& value) { SetMonitoringRoleArn(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithMonitoringRoleArn(const char* value) { SetMonitoringRoleArn(value); return *this;} /** *

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

*/ inline int GetPromotionTier() const{ return m_promotionTier; } /** *

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

*/ inline bool PromotionTierHasBeenSet() const { return m_promotionTierHasBeenSet; } /** *

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

*/ inline void SetPromotionTier(int value) { m_promotionTierHasBeenSet = true; m_promotionTier = value; } /** *

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

*/ inline DBInstance& WithPromotionTier(int value) { SetPromotionTier(value); return *this;} /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline const Aws::String& GetDBInstanceArn() const{ return m_dBInstanceArn; } /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline bool DBInstanceArnHasBeenSet() const { return m_dBInstanceArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline void SetDBInstanceArn(const Aws::String& value) { m_dBInstanceArnHasBeenSet = true; m_dBInstanceArn = value; } /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline void SetDBInstanceArn(Aws::String&& value) { m_dBInstanceArnHasBeenSet = true; m_dBInstanceArn = std::move(value); } /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline void SetDBInstanceArn(const char* value) { m_dBInstanceArnHasBeenSet = true; m_dBInstanceArn.assign(value); } /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline DBInstance& WithDBInstanceArn(const Aws::String& value) { SetDBInstanceArn(value); return *this;} /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline DBInstance& WithDBInstanceArn(Aws::String&& value) { SetDBInstanceArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) for the DB instance.

*/ inline DBInstance& WithDBInstanceArn(const char* value) { SetDBInstanceArn(value); return *this;} /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline const Aws::String& GetTimezone() const{ return m_timezone; } /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline bool TimezoneHasBeenSet() const { return m_timezoneHasBeenSet; } /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline void SetTimezone(const Aws::String& value) { m_timezoneHasBeenSet = true; m_timezone = value; } /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline void SetTimezone(Aws::String&& value) { m_timezoneHasBeenSet = true; m_timezone = std::move(value); } /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline void SetTimezone(const char* value) { m_timezoneHasBeenSet = true; m_timezone.assign(value); } /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline DBInstance& WithTimezone(const Aws::String& value) { SetTimezone(value); return *this;} /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline DBInstance& WithTimezone(Aws::String&& value) { SetTimezone(std::move(value)); return *this;} /** *

The time zone of the DB instance. In most cases, the Timezone * element is empty. Timezone content appears only for Microsoft SQL * Server DB instances that were created with a time zone specified.

*/ inline DBInstance& WithTimezone(const char* value) { SetTimezone(value); return *this;} /** *

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

For a list of engine versions that support IAM database * authentication, see IAM * database authentication in the Amazon RDS User Guide and IAM * database authentication in Aurora in the Amazon Aurora User * Guide.

*/ inline bool GetIAMDatabaseAuthenticationEnabled() const{ return m_iAMDatabaseAuthenticationEnabled; } /** *

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

For a list of engine versions that support IAM database * authentication, see IAM * database authentication in the Amazon RDS User Guide and IAM * database authentication in Aurora in the Amazon Aurora User * Guide.

*/ inline bool IAMDatabaseAuthenticationEnabledHasBeenSet() const { return m_iAMDatabaseAuthenticationEnabledHasBeenSet; } /** *

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

For a list of engine versions that support IAM database * authentication, see IAM * database authentication in the Amazon RDS User Guide and IAM * database authentication in Aurora in the Amazon Aurora User * Guide.

*/ inline void SetIAMDatabaseAuthenticationEnabled(bool value) { m_iAMDatabaseAuthenticationEnabledHasBeenSet = true; m_iAMDatabaseAuthenticationEnabled = value; } /** *

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

For a list of engine versions that support IAM database * authentication, see IAM * database authentication in the Amazon RDS User Guide and IAM * database authentication in Aurora in the Amazon Aurora User * Guide.

*/ inline DBInstance& WithIAMDatabaseAuthenticationEnabled(bool value) { SetIAMDatabaseAuthenticationEnabled(value); return *this;} /** *

Indicates whether Performance Insights is enabled for the DB instance.

*/ inline bool GetPerformanceInsightsEnabled() const{ return m_performanceInsightsEnabled; } /** *

Indicates whether Performance Insights is enabled for the DB instance.

*/ inline bool PerformanceInsightsEnabledHasBeenSet() const { return m_performanceInsightsEnabledHasBeenSet; } /** *

Indicates whether Performance Insights is enabled for the DB instance.

*/ inline void SetPerformanceInsightsEnabled(bool value) { m_performanceInsightsEnabledHasBeenSet = true; m_performanceInsightsEnabled = value; } /** *

Indicates whether Performance Insights is enabled for the DB instance.

*/ inline DBInstance& WithPerformanceInsightsEnabled(bool value) { SetPerformanceInsightsEnabled(value); return *this;} /** *

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.

*/ inline const Aws::String& GetPerformanceInsightsKMSKeyId() const{ return m_performanceInsightsKMSKeyId; } /** *

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

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

*/ inline bool PerformanceInsightsKMSKeyIdHasBeenSet() const { return m_performanceInsightsKMSKeyIdHasBeenSet; } /** *

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.

*/ inline void SetPerformanceInsightsKMSKeyId(const Aws::String& value) { m_performanceInsightsKMSKeyIdHasBeenSet = true; m_performanceInsightsKMSKeyId = value; } /** *

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.

*/ inline void SetPerformanceInsightsKMSKeyId(Aws::String&& value) { m_performanceInsightsKMSKeyIdHasBeenSet = true; m_performanceInsightsKMSKeyId = std::move(value); } /** *

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.

*/ inline void SetPerformanceInsightsKMSKeyId(const char* value) { m_performanceInsightsKMSKeyIdHasBeenSet = true; m_performanceInsightsKMSKeyId.assign(value); } /** *

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.

*/ inline DBInstance& WithPerformanceInsightsKMSKeyId(const Aws::String& value) { SetPerformanceInsightsKMSKeyId(value); return *this;} /** *

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.

*/ inline DBInstance& WithPerformanceInsightsKMSKeyId(Aws::String&& value) { SetPerformanceInsightsKMSKeyId(std::move(value)); return *this;} /** *

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.

*/ inline DBInstance& WithPerformanceInsightsKMSKeyId(const char* value) { SetPerformanceInsightsKMSKeyId(value); return *this;} /** *

The number of days to retain Performance Insights data.

Valid * Values:

  • 7

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

  • 731

Default: * 7 days

*/ inline int GetPerformanceInsightsRetentionPeriod() const{ return m_performanceInsightsRetentionPeriod; } /** *

The number of days to retain Performance Insights data.

Valid * Values:

  • 7

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

  • 731

Default: * 7 days

*/ inline bool PerformanceInsightsRetentionPeriodHasBeenSet() const { return m_performanceInsightsRetentionPeriodHasBeenSet; } /** *

The number of days to retain Performance Insights data.

Valid * Values:

  • 7

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

  • 731

Default: * 7 days

*/ inline void SetPerformanceInsightsRetentionPeriod(int value) { m_performanceInsightsRetentionPeriodHasBeenSet = true; m_performanceInsightsRetentionPeriod = value; } /** *

The number of days to retain Performance Insights data.

Valid * Values:

  • 7

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

  • 731

Default: * 7 days

*/ inline DBInstance& WithPerformanceInsightsRetentionPeriod(int value) { SetPerformanceInsightsRetentionPeriod(value); return *this;} /** *

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

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

*/ inline const Aws::Vector& GetEnabledCloudwatchLogsExports() const{ return m_enabledCloudwatchLogsExports; } /** *

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

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

*/ inline bool EnabledCloudwatchLogsExportsHasBeenSet() const { return m_enabledCloudwatchLogsExportsHasBeenSet; } /** *

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

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

*/ inline void SetEnabledCloudwatchLogsExports(const Aws::Vector& value) { m_enabledCloudwatchLogsExportsHasBeenSet = true; m_enabledCloudwatchLogsExports = value; } /** *

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

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

*/ inline void SetEnabledCloudwatchLogsExports(Aws::Vector&& value) { m_enabledCloudwatchLogsExportsHasBeenSet = true; m_enabledCloudwatchLogsExports = std::move(value); } /** *

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

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

*/ inline DBInstance& WithEnabledCloudwatchLogsExports(const Aws::Vector& value) { SetEnabledCloudwatchLogsExports(value); return *this;} /** *

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

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

*/ inline DBInstance& WithEnabledCloudwatchLogsExports(Aws::Vector&& value) { SetEnabledCloudwatchLogsExports(std::move(value)); return *this;} /** *

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

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

*/ inline DBInstance& AddEnabledCloudwatchLogsExports(const Aws::String& value) { m_enabledCloudwatchLogsExportsHasBeenSet = true; m_enabledCloudwatchLogsExports.push_back(value); return *this; } /** *

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

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

*/ inline DBInstance& AddEnabledCloudwatchLogsExports(Aws::String&& value) { m_enabledCloudwatchLogsExportsHasBeenSet = true; m_enabledCloudwatchLogsExports.push_back(std::move(value)); return *this; } /** *

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

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

*/ inline DBInstance& AddEnabledCloudwatchLogsExports(const char* value) { m_enabledCloudwatchLogsExportsHasBeenSet = true; m_enabledCloudwatchLogsExports.push_back(value); return *this; } /** *

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

*/ inline const Aws::Vector& GetProcessorFeatures() const{ return m_processorFeatures; } /** *

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

*/ inline bool ProcessorFeaturesHasBeenSet() const { return m_processorFeaturesHasBeenSet; } /** *

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

*/ inline void SetProcessorFeatures(const Aws::Vector& value) { m_processorFeaturesHasBeenSet = true; m_processorFeatures = value; } /** *

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

*/ inline void SetProcessorFeatures(Aws::Vector&& value) { m_processorFeaturesHasBeenSet = true; m_processorFeatures = std::move(value); } /** *

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

*/ inline DBInstance& WithProcessorFeatures(const Aws::Vector& value) { SetProcessorFeatures(value); return *this;} /** *

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

*/ inline DBInstance& WithProcessorFeatures(Aws::Vector&& value) { SetProcessorFeatures(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& AddProcessorFeatures(const ProcessorFeature& value) { m_processorFeaturesHasBeenSet = true; m_processorFeatures.push_back(value); return *this; } /** *

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

*/ inline DBInstance& AddProcessorFeatures(ProcessorFeature&& value) { m_processorFeaturesHasBeenSet = true; m_processorFeatures.push_back(std::move(value)); return *this; } /** *

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

*/ inline bool GetDeletionProtection() const{ return m_deletionProtection; } /** *

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

*/ inline bool DeletionProtectionHasBeenSet() const { return m_deletionProtectionHasBeenSet; } /** *

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

*/ inline void SetDeletionProtection(bool value) { m_deletionProtectionHasBeenSet = true; m_deletionProtection = value; } /** *

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

*/ inline DBInstance& WithDeletionProtection(bool value) { SetDeletionProtection(value); return *this;} /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline const Aws::Vector& GetAssociatedRoles() const{ return m_associatedRoles; } /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline bool AssociatedRolesHasBeenSet() const { return m_associatedRolesHasBeenSet; } /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline void SetAssociatedRoles(const Aws::Vector& value) { m_associatedRolesHasBeenSet = true; m_associatedRoles = value; } /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline void SetAssociatedRoles(Aws::Vector&& value) { m_associatedRolesHasBeenSet = true; m_associatedRoles = std::move(value); } /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline DBInstance& WithAssociatedRoles(const Aws::Vector& value) { SetAssociatedRoles(value); return *this;} /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline DBInstance& WithAssociatedRoles(Aws::Vector&& value) { SetAssociatedRoles(std::move(value)); return *this;} /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline DBInstance& AddAssociatedRoles(const DBInstanceRole& value) { m_associatedRolesHasBeenSet = true; m_associatedRoles.push_back(value); return *this; } /** *

The Amazon Web Services Identity and Access Management (IAM) roles associated * with the DB instance.

*/ inline DBInstance& AddAssociatedRoles(DBInstanceRole&& value) { m_associatedRolesHasBeenSet = true; m_associatedRoles.push_back(std::move(value)); return *this; } /** *

The listener connection endpoint for SQL Server Always On.

*/ inline const Endpoint& GetListenerEndpoint() const{ return m_listenerEndpoint; } /** *

The listener connection endpoint for SQL Server Always On.

*/ inline bool ListenerEndpointHasBeenSet() const { return m_listenerEndpointHasBeenSet; } /** *

The listener connection endpoint for SQL Server Always On.

*/ inline void SetListenerEndpoint(const Endpoint& value) { m_listenerEndpointHasBeenSet = true; m_listenerEndpoint = value; } /** *

The listener connection endpoint for SQL Server Always On.

*/ inline void SetListenerEndpoint(Endpoint&& value) { m_listenerEndpointHasBeenSet = true; m_listenerEndpoint = std::move(value); } /** *

The listener connection endpoint for SQL Server Always On.

*/ inline DBInstance& WithListenerEndpoint(const Endpoint& value) { SetListenerEndpoint(value); return *this;} /** *

The listener connection endpoint for SQL Server Always On.

*/ inline DBInstance& WithListenerEndpoint(Endpoint&& value) { SetListenerEndpoint(std::move(value)); return *this;} /** *

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

*/ inline int GetMaxAllocatedStorage() const{ return m_maxAllocatedStorage; } /** *

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

*/ inline bool MaxAllocatedStorageHasBeenSet() const { return m_maxAllocatedStorageHasBeenSet; } /** *

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

*/ inline void SetMaxAllocatedStorage(int value) { m_maxAllocatedStorageHasBeenSet = true; m_maxAllocatedStorage = value; } /** *

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

*/ inline DBInstance& WithMaxAllocatedStorage(int value) { SetMaxAllocatedStorage(value); return *this;} inline const Aws::Vector& GetTagList() const{ return m_tagList; } inline bool TagListHasBeenSet() const { return m_tagListHasBeenSet; } inline void SetTagList(const Aws::Vector& value) { m_tagListHasBeenSet = true; m_tagList = value; } inline void SetTagList(Aws::Vector&& value) { m_tagListHasBeenSet = true; m_tagList = std::move(value); } inline DBInstance& WithTagList(const Aws::Vector& value) { SetTagList(value); return *this;} inline DBInstance& WithTagList(Aws::Vector&& value) { SetTagList(std::move(value)); return *this;} inline DBInstance& AddTagList(const Tag& value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } inline DBInstance& AddTagList(Tag&& value) { m_tagListHasBeenSet = true; m_tagList.push_back(std::move(value)); return *this; } /** *

The list of replicated automated backups associated with the DB instance.

*/ inline const Aws::Vector& GetDBInstanceAutomatedBackupsReplications() const{ return m_dBInstanceAutomatedBackupsReplications; } /** *

The list of replicated automated backups associated with the DB instance.

*/ inline bool DBInstanceAutomatedBackupsReplicationsHasBeenSet() const { return m_dBInstanceAutomatedBackupsReplicationsHasBeenSet; } /** *

The list of replicated automated backups associated with the DB instance.

*/ inline void SetDBInstanceAutomatedBackupsReplications(const Aws::Vector& value) { m_dBInstanceAutomatedBackupsReplicationsHasBeenSet = true; m_dBInstanceAutomatedBackupsReplications = value; } /** *

The list of replicated automated backups associated with the DB instance.

*/ inline void SetDBInstanceAutomatedBackupsReplications(Aws::Vector&& value) { m_dBInstanceAutomatedBackupsReplicationsHasBeenSet = true; m_dBInstanceAutomatedBackupsReplications = std::move(value); } /** *

The list of replicated automated backups associated with the DB instance.

*/ inline DBInstance& WithDBInstanceAutomatedBackupsReplications(const Aws::Vector& value) { SetDBInstanceAutomatedBackupsReplications(value); return *this;} /** *

The list of replicated automated backups associated with the DB instance.

*/ inline DBInstance& WithDBInstanceAutomatedBackupsReplications(Aws::Vector&& value) { SetDBInstanceAutomatedBackupsReplications(std::move(value)); return *this;} /** *

The list of replicated automated backups associated with the DB instance.

*/ inline DBInstance& AddDBInstanceAutomatedBackupsReplications(const DBInstanceAutomatedBackupsReplication& value) { m_dBInstanceAutomatedBackupsReplicationsHasBeenSet = true; m_dBInstanceAutomatedBackupsReplications.push_back(value); return *this; } /** *

The list of replicated automated backups associated with the DB instance.

*/ inline DBInstance& AddDBInstanceAutomatedBackupsReplications(DBInstanceAutomatedBackupsReplication&& value) { m_dBInstanceAutomatedBackupsReplicationsHasBeenSet = true; m_dBInstanceAutomatedBackupsReplications.push_back(std::move(value)); return *this; } /** *

Indicates whether a customer-owned IP address (CoIP) is enabled for an RDS on * Outposts DB instance.

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

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

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

*/ inline bool GetCustomerOwnedIpEnabled() const{ return m_customerOwnedIpEnabled; } /** *

Indicates whether a customer-owned IP address (CoIP) is enabled for an RDS on * Outposts DB instance.

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

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

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

*/ inline bool CustomerOwnedIpEnabledHasBeenSet() const { return m_customerOwnedIpEnabledHasBeenSet; } /** *

Indicates whether a customer-owned IP address (CoIP) is enabled for an RDS on * Outposts DB instance.

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

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

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

*/ inline void SetCustomerOwnedIpEnabled(bool value) { m_customerOwnedIpEnabledHasBeenSet = true; m_customerOwnedIpEnabled = value; } /** *

Indicates whether a customer-owned IP address (CoIP) is enabled for an RDS on * Outposts DB instance.

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

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

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

*/ inline DBInstance& WithCustomerOwnedIpEnabled(bool value) { SetCustomerOwnedIpEnabled(value); return *this;} /** *

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

*/ inline const Aws::String& GetAwsBackupRecoveryPointArn() const{ return m_awsBackupRecoveryPointArn; } /** *

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

*/ inline bool AwsBackupRecoveryPointArnHasBeenSet() const { return m_awsBackupRecoveryPointArnHasBeenSet; } /** *

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

*/ inline void SetAwsBackupRecoveryPointArn(const Aws::String& value) { m_awsBackupRecoveryPointArnHasBeenSet = true; m_awsBackupRecoveryPointArn = value; } /** *

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

*/ inline void SetAwsBackupRecoveryPointArn(Aws::String&& value) { m_awsBackupRecoveryPointArnHasBeenSet = true; m_awsBackupRecoveryPointArn = std::move(value); } /** *

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

*/ inline void SetAwsBackupRecoveryPointArn(const char* value) { m_awsBackupRecoveryPointArnHasBeenSet = true; m_awsBackupRecoveryPointArn.assign(value); } /** *

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

*/ inline DBInstance& WithAwsBackupRecoveryPointArn(const Aws::String& value) { SetAwsBackupRecoveryPointArn(value); return *this;} /** *

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

*/ inline DBInstance& WithAwsBackupRecoveryPointArn(Aws::String&& value) { SetAwsBackupRecoveryPointArn(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithAwsBackupRecoveryPointArn(const char* value) { SetAwsBackupRecoveryPointArn(value); return *this;} /** *

The status of the database activity stream.

*/ inline const ActivityStreamStatus& GetActivityStreamStatus() const{ return m_activityStreamStatus; } /** *

The status of the database activity stream.

*/ inline bool ActivityStreamStatusHasBeenSet() const { return m_activityStreamStatusHasBeenSet; } /** *

The status of the database activity stream.

*/ inline void SetActivityStreamStatus(const ActivityStreamStatus& value) { m_activityStreamStatusHasBeenSet = true; m_activityStreamStatus = value; } /** *

The status of the database activity stream.

*/ inline void SetActivityStreamStatus(ActivityStreamStatus&& value) { m_activityStreamStatusHasBeenSet = true; m_activityStreamStatus = std::move(value); } /** *

The status of the database activity stream.

*/ inline DBInstance& WithActivityStreamStatus(const ActivityStreamStatus& value) { SetActivityStreamStatus(value); return *this;} /** *

The status of the database activity stream.

*/ inline DBInstance& WithActivityStreamStatus(ActivityStreamStatus&& value) { SetActivityStreamStatus(std::move(value)); return *this;} /** *

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.

*/ inline const Aws::String& GetActivityStreamKmsKeyId() const{ return m_activityStreamKmsKeyId; } /** *

The Amazon Web Services KMS key identifier used for encrypting messages in * the database activity stream. The Amazon Web Services KMS key identifier is the * key ARN, key ID, alias ARN, or alias name for the KMS key.

*/ inline bool ActivityStreamKmsKeyIdHasBeenSet() const { return m_activityStreamKmsKeyIdHasBeenSet; } /** *

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.

*/ inline void SetActivityStreamKmsKeyId(const Aws::String& value) { m_activityStreamKmsKeyIdHasBeenSet = true; m_activityStreamKmsKeyId = value; } /** *

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.

*/ inline void SetActivityStreamKmsKeyId(Aws::String&& value) { m_activityStreamKmsKeyIdHasBeenSet = true; m_activityStreamKmsKeyId = std::move(value); } /** *

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.

*/ inline void SetActivityStreamKmsKeyId(const char* value) { m_activityStreamKmsKeyIdHasBeenSet = true; m_activityStreamKmsKeyId.assign(value); } /** *

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.

*/ inline DBInstance& WithActivityStreamKmsKeyId(const Aws::String& value) { SetActivityStreamKmsKeyId(value); return *this;} /** *

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.

*/ inline DBInstance& WithActivityStreamKmsKeyId(Aws::String&& value) { SetActivityStreamKmsKeyId(std::move(value)); return *this;} /** *

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.

*/ inline DBInstance& WithActivityStreamKmsKeyId(const char* value) { SetActivityStreamKmsKeyId(value); return *this;} /** *

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

*/ inline const Aws::String& GetActivityStreamKinesisStreamName() const{ return m_activityStreamKinesisStreamName; } /** *

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

*/ inline bool ActivityStreamKinesisStreamNameHasBeenSet() const { return m_activityStreamKinesisStreamNameHasBeenSet; } /** *

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

*/ inline void SetActivityStreamKinesisStreamName(const Aws::String& value) { m_activityStreamKinesisStreamNameHasBeenSet = true; m_activityStreamKinesisStreamName = value; } /** *

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

*/ inline void SetActivityStreamKinesisStreamName(Aws::String&& value) { m_activityStreamKinesisStreamNameHasBeenSet = true; m_activityStreamKinesisStreamName = std::move(value); } /** *

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

*/ inline void SetActivityStreamKinesisStreamName(const char* value) { m_activityStreamKinesisStreamNameHasBeenSet = true; m_activityStreamKinesisStreamName.assign(value); } /** *

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

*/ inline DBInstance& WithActivityStreamKinesisStreamName(const Aws::String& value) { SetActivityStreamKinesisStreamName(value); return *this;} /** *

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

*/ inline DBInstance& WithActivityStreamKinesisStreamName(Aws::String&& value) { SetActivityStreamKinesisStreamName(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithActivityStreamKinesisStreamName(const char* value) { SetActivityStreamKinesisStreamName(value); return *this;} /** *

The mode of the database activity stream. Database events such as a change or * access generate an activity stream event. RDS for Oracle always handles these * events asynchronously.

*/ inline const ActivityStreamMode& GetActivityStreamMode() const{ return m_activityStreamMode; } /** *

The mode of the database activity stream. Database events such as a change or * access generate an activity stream event. RDS for Oracle always handles these * events asynchronously.

*/ inline bool ActivityStreamModeHasBeenSet() const { return m_activityStreamModeHasBeenSet; } /** *

The mode of the database activity stream. Database events such as a change or * access generate an activity stream event. RDS for Oracle always handles these * events asynchronously.

*/ inline void SetActivityStreamMode(const ActivityStreamMode& value) { m_activityStreamModeHasBeenSet = true; m_activityStreamMode = value; } /** *

The mode of the database activity stream. Database events such as a change or * access generate an activity stream event. RDS for Oracle always handles these * events asynchronously.

*/ inline void SetActivityStreamMode(ActivityStreamMode&& value) { m_activityStreamModeHasBeenSet = true; m_activityStreamMode = std::move(value); } /** *

The mode of the database activity stream. Database events such as a change or * access generate an activity stream event. RDS for Oracle always handles these * events asynchronously.

*/ inline DBInstance& WithActivityStreamMode(const ActivityStreamMode& value) { SetActivityStreamMode(value); return *this;} /** *

The mode of the database activity stream. Database events such as a change or * access generate an activity stream event. RDS for Oracle always handles these * events asynchronously.

*/ inline DBInstance& WithActivityStreamMode(ActivityStreamMode&& value) { SetActivityStreamMode(std::move(value)); return *this;} /** *

Indicates whether engine-native audit fields are included in the database * activity stream.

*/ inline bool GetActivityStreamEngineNativeAuditFieldsIncluded() const{ return m_activityStreamEngineNativeAuditFieldsIncluded; } /** *

Indicates whether engine-native audit fields are included in the database * activity stream.

*/ inline bool ActivityStreamEngineNativeAuditFieldsIncludedHasBeenSet() const { return m_activityStreamEngineNativeAuditFieldsIncludedHasBeenSet; } /** *

Indicates whether engine-native audit fields are included in the database * activity stream.

*/ inline void SetActivityStreamEngineNativeAuditFieldsIncluded(bool value) { m_activityStreamEngineNativeAuditFieldsIncludedHasBeenSet = true; m_activityStreamEngineNativeAuditFieldsIncluded = value; } /** *

Indicates whether engine-native audit fields are included in the database * activity stream.

*/ inline DBInstance& WithActivityStreamEngineNativeAuditFieldsIncluded(bool value) { SetActivityStreamEngineNativeAuditFieldsIncluded(value); return *this;} /** *

The automation mode of the RDS Custom DB instance: full or * all paused. If full, the DB instance automates * monitoring and instance recovery. If all paused, the instance * pauses automation for the duration set by * --resume-full-automation-mode-minutes.

*/ inline const AutomationMode& GetAutomationMode() const{ return m_automationMode; } /** *

The automation mode of the RDS Custom DB instance: full or * all paused. If full, the DB instance automates * monitoring and instance recovery. If all paused, the instance * pauses automation for the duration set by * --resume-full-automation-mode-minutes.

*/ inline bool AutomationModeHasBeenSet() const { return m_automationModeHasBeenSet; } /** *

The automation mode of the RDS Custom DB instance: full or * all paused. If full, the DB instance automates * monitoring and instance recovery. If all paused, the instance * pauses automation for the duration set by * --resume-full-automation-mode-minutes.

*/ inline void SetAutomationMode(const AutomationMode& value) { m_automationModeHasBeenSet = true; m_automationMode = value; } /** *

The automation mode of the RDS Custom DB instance: full or * all paused. If full, the DB instance automates * monitoring and instance recovery. If all paused, the instance * pauses automation for the duration set by * --resume-full-automation-mode-minutes.

*/ inline void SetAutomationMode(AutomationMode&& value) { m_automationModeHasBeenSet = true; m_automationMode = std::move(value); } /** *

The automation mode of the RDS Custom DB instance: full or * all paused. If full, the DB instance automates * monitoring and instance recovery. If all paused, the instance * pauses automation for the duration set by * --resume-full-automation-mode-minutes.

*/ inline DBInstance& WithAutomationMode(const AutomationMode& value) { SetAutomationMode(value); return *this;} /** *

The automation mode of the RDS Custom DB instance: full or * all paused. If full, the DB instance automates * monitoring and instance recovery. If all paused, the instance * pauses automation for the duration set by * --resume-full-automation-mode-minutes.

*/ inline DBInstance& WithAutomationMode(AutomationMode&& value) { SetAutomationMode(std::move(value)); return *this;} /** *

The number of minutes to pause the automation. When the time period ends, RDS * Custom resumes full automation. The minimum value is 60 (default). The maximum * value is 1,440.

*/ inline const Aws::Utils::DateTime& GetResumeFullAutomationModeTime() const{ return m_resumeFullAutomationModeTime; } /** *

The number of minutes to pause the automation. When the time period ends, RDS * Custom resumes full automation. The minimum value is 60 (default). The maximum * value is 1,440.

*/ inline bool ResumeFullAutomationModeTimeHasBeenSet() const { return m_resumeFullAutomationModeTimeHasBeenSet; } /** *

The number of minutes to pause the automation. When the time period ends, RDS * Custom resumes full automation. The minimum value is 60 (default). The maximum * value is 1,440.

*/ inline void SetResumeFullAutomationModeTime(const Aws::Utils::DateTime& value) { m_resumeFullAutomationModeTimeHasBeenSet = true; m_resumeFullAutomationModeTime = value; } /** *

The number of minutes to pause the automation. When the time period ends, RDS * Custom resumes full automation. The minimum value is 60 (default). The maximum * value is 1,440.

*/ inline void SetResumeFullAutomationModeTime(Aws::Utils::DateTime&& value) { m_resumeFullAutomationModeTimeHasBeenSet = true; m_resumeFullAutomationModeTime = std::move(value); } /** *

The number of minutes to pause the automation. When the time period ends, RDS * Custom resumes full automation. The minimum value is 60 (default). The maximum * value is 1,440.

*/ inline DBInstance& WithResumeFullAutomationModeTime(const Aws::Utils::DateTime& value) { SetResumeFullAutomationModeTime(value); return *this;} /** *

The number of minutes to pause the automation. When the time period ends, RDS * Custom resumes full automation. The minimum value is 60 (default). The maximum * value is 1,440.

*/ inline DBInstance& WithResumeFullAutomationModeTime(Aws::Utils::DateTime&& value) { SetResumeFullAutomationModeTime(std::move(value)); return *this;} /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline const Aws::String& GetCustomIamInstanceProfile() const{ return m_customIamInstanceProfile; } /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline bool CustomIamInstanceProfileHasBeenSet() const { return m_customIamInstanceProfileHasBeenSet; } /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline void SetCustomIamInstanceProfile(const Aws::String& value) { m_customIamInstanceProfileHasBeenSet = true; m_customIamInstanceProfile = value; } /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline void SetCustomIamInstanceProfile(Aws::String&& value) { m_customIamInstanceProfileHasBeenSet = true; m_customIamInstanceProfile = std::move(value); } /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline void SetCustomIamInstanceProfile(const char* value) { m_customIamInstanceProfileHasBeenSet = true; m_customIamInstanceProfile.assign(value); } /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline DBInstance& WithCustomIamInstanceProfile(const Aws::String& value) { SetCustomIamInstanceProfile(value); return *this;} /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline DBInstance& WithCustomIamInstanceProfile(Aws::String&& value) { SetCustomIamInstanceProfile(std::move(value)); return *this;} /** *

The instance profile associated with the underlying Amazon EC2 instance of an * RDS Custom DB instance. The instance profile must meet the following * requirements:

  • The profile must exist in your account.

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

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

*

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

*/ inline DBInstance& WithCustomIamInstanceProfile(const char* value) { SetCustomIamInstanceProfile(value); return *this;} /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline const Aws::String& GetBackupTarget() const{ return m_backupTarget; } /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline bool BackupTargetHasBeenSet() const { return m_backupTargetHasBeenSet; } /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline void SetBackupTarget(const Aws::String& value) { m_backupTargetHasBeenSet = true; m_backupTarget = value; } /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline void SetBackupTarget(Aws::String&& value) { m_backupTargetHasBeenSet = true; m_backupTarget = std::move(value); } /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline void SetBackupTarget(const char* value) { m_backupTargetHasBeenSet = true; m_backupTarget.assign(value); } /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline DBInstance& WithBackupTarget(const Aws::String& value) { SetBackupTarget(value); return *this;} /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline DBInstance& WithBackupTarget(Aws::String&& value) { SetBackupTarget(std::move(value)); return *this;} /** *

The location where automated backups and manual snapshots are stored: Amazon * Web Services Outposts or the Amazon Web Services Region.

*/ inline DBInstance& WithBackupTarget(const char* value) { SetBackupTarget(value); return *this;} /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline const Aws::String& GetNetworkType() const{ return m_networkType; } /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; } /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline void SetNetworkType(const Aws::String& value) { m_networkTypeHasBeenSet = true; m_networkType = value; } /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline void SetNetworkType(Aws::String&& value) { m_networkTypeHasBeenSet = true; m_networkType = std::move(value); } /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline void SetNetworkType(const char* value) { m_networkTypeHasBeenSet = true; m_networkType.assign(value); } /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline DBInstance& WithNetworkType(const Aws::String& value) { SetNetworkType(value); return *this;} /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline DBInstance& WithNetworkType(Aws::String&& value) { SetNetworkType(std::move(value)); return *this;} /** *

The network type of the DB instance.

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

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

Valid Values: IPV4 | DUAL

*/ inline DBInstance& WithNetworkType(const char* value) { SetNetworkType(value); return *this;} /** *

The status of the policy state of the activity stream.

*/ inline const ActivityStreamPolicyStatus& GetActivityStreamPolicyStatus() const{ return m_activityStreamPolicyStatus; } /** *

The status of the policy state of the activity stream.

*/ inline bool ActivityStreamPolicyStatusHasBeenSet() const { return m_activityStreamPolicyStatusHasBeenSet; } /** *

The status of the policy state of the activity stream.

*/ inline void SetActivityStreamPolicyStatus(const ActivityStreamPolicyStatus& value) { m_activityStreamPolicyStatusHasBeenSet = true; m_activityStreamPolicyStatus = value; } /** *

The status of the policy state of the activity stream.

*/ inline void SetActivityStreamPolicyStatus(ActivityStreamPolicyStatus&& value) { m_activityStreamPolicyStatusHasBeenSet = true; m_activityStreamPolicyStatus = std::move(value); } /** *

The status of the policy state of the activity stream.

*/ inline DBInstance& WithActivityStreamPolicyStatus(const ActivityStreamPolicyStatus& value) { SetActivityStreamPolicyStatus(value); return *this;} /** *

The status of the policy state of the activity stream.

*/ inline DBInstance& WithActivityStreamPolicyStatus(ActivityStreamPolicyStatus&& value) { SetActivityStreamPolicyStatus(std::move(value)); return *this;} /** *

The storage throughput for the DB instance.

This setting applies only * to the gp3 storage type.

*/ inline int GetStorageThroughput() const{ return m_storageThroughput; } /** *

The storage throughput for the DB instance.

This setting applies only * to the gp3 storage type.

*/ inline bool StorageThroughputHasBeenSet() const { return m_storageThroughputHasBeenSet; } /** *

The storage throughput for the DB instance.

This setting applies only * to the gp3 storage type.

*/ inline void SetStorageThroughput(int value) { m_storageThroughputHasBeenSet = true; m_storageThroughput = value; } /** *

The storage throughput for the DB instance.

This setting applies only * to the gp3 storage type.

*/ inline DBInstance& WithStorageThroughput(int value) { SetStorageThroughput(value); return *this;} /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline const Aws::String& GetDBSystemId() const{ return m_dBSystemId; } /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline bool DBSystemIdHasBeenSet() const { return m_dBSystemIdHasBeenSet; } /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline void SetDBSystemId(const Aws::String& value) { m_dBSystemIdHasBeenSet = true; m_dBSystemId = value; } /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline void SetDBSystemId(Aws::String&& value) { m_dBSystemIdHasBeenSet = true; m_dBSystemId = std::move(value); } /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline void SetDBSystemId(const char* value) { m_dBSystemIdHasBeenSet = true; m_dBSystemId.assign(value); } /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline DBInstance& WithDBSystemId(const Aws::String& value) { SetDBSystemId(value); return *this;} /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline DBInstance& WithDBSystemId(Aws::String&& value) { SetDBSystemId(std::move(value)); return *this;} /** *

The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle * SID is also the name of the CDB. This setting is only valid for RDS Custom DB * instances.

*/ inline DBInstance& WithDBSystemId(const char* value) { SetDBSystemId(value); return *this;} /** *

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.

*/ inline const MasterUserSecret& GetMasterUserSecret() const{ return m_masterUserSecret; } /** *

The secret managed by RDS in Amazon Web Services Secrets Manager for the * master user password.

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

*/ inline bool MasterUserSecretHasBeenSet() const { return m_masterUserSecretHasBeenSet; } /** *

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.

*/ inline void SetMasterUserSecret(const MasterUserSecret& value) { m_masterUserSecretHasBeenSet = true; m_masterUserSecret = value; } /** *

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.

*/ inline void SetMasterUserSecret(MasterUserSecret&& value) { m_masterUserSecretHasBeenSet = true; m_masterUserSecret = std::move(value); } /** *

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.

*/ inline DBInstance& WithMasterUserSecret(const MasterUserSecret& value) { SetMasterUserSecret(value); return *this;} /** *

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.

*/ inline DBInstance& WithMasterUserSecret(MasterUserSecret&& value) { SetMasterUserSecret(std::move(value)); return *this;} /** *

The details of the DB instance's server certificate.

*/ inline const CertificateDetails& GetCertificateDetails() const{ return m_certificateDetails; } /** *

The details of the DB instance's server certificate.

*/ inline bool CertificateDetailsHasBeenSet() const { return m_certificateDetailsHasBeenSet; } /** *

The details of the DB instance's server certificate.

*/ inline void SetCertificateDetails(const CertificateDetails& value) { m_certificateDetailsHasBeenSet = true; m_certificateDetails = value; } /** *

The details of the DB instance's server certificate.

*/ inline void SetCertificateDetails(CertificateDetails&& value) { m_certificateDetailsHasBeenSet = true; m_certificateDetails = std::move(value); } /** *

The details of the DB instance's server certificate.

*/ inline DBInstance& WithCertificateDetails(const CertificateDetails& value) { SetCertificateDetails(value); return *this;} /** *

The details of the DB instance's server certificate.

*/ inline DBInstance& WithCertificateDetails(CertificateDetails&& value) { SetCertificateDetails(std::move(value)); return *this;} /** *

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

*/ inline const Aws::String& GetReadReplicaSourceDBClusterIdentifier() const{ return m_readReplicaSourceDBClusterIdentifier; } /** *

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

*/ inline bool ReadReplicaSourceDBClusterIdentifierHasBeenSet() const { return m_readReplicaSourceDBClusterIdentifierHasBeenSet; } /** *

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

*/ inline void SetReadReplicaSourceDBClusterIdentifier(const Aws::String& value) { m_readReplicaSourceDBClusterIdentifierHasBeenSet = true; m_readReplicaSourceDBClusterIdentifier = value; } /** *

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

*/ inline void SetReadReplicaSourceDBClusterIdentifier(Aws::String&& value) { m_readReplicaSourceDBClusterIdentifierHasBeenSet = true; m_readReplicaSourceDBClusterIdentifier = std::move(value); } /** *

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

*/ inline void SetReadReplicaSourceDBClusterIdentifier(const char* value) { m_readReplicaSourceDBClusterIdentifierHasBeenSet = true; m_readReplicaSourceDBClusterIdentifier.assign(value); } /** *

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

*/ inline DBInstance& WithReadReplicaSourceDBClusterIdentifier(const Aws::String& value) { SetReadReplicaSourceDBClusterIdentifier(value); return *this;} /** *

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

*/ inline DBInstance& WithReadReplicaSourceDBClusterIdentifier(Aws::String&& value) { SetReadReplicaSourceDBClusterIdentifier(std::move(value)); return *this;} /** *

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

*/ inline DBInstance& WithReadReplicaSourceDBClusterIdentifier(const char* value) { SetReadReplicaSourceDBClusterIdentifier(value); return *this;} /** *

The progress of the storage optimization operation as a percentage.

*/ inline const Aws::String& GetPercentProgress() const{ return m_percentProgress; } /** *

The progress of the storage optimization operation as a percentage.

*/ inline bool PercentProgressHasBeenSet() const { return m_percentProgressHasBeenSet; } /** *

The progress of the storage optimization operation as a percentage.

*/ inline void SetPercentProgress(const Aws::String& value) { m_percentProgressHasBeenSet = true; m_percentProgress = value; } /** *

The progress of the storage optimization operation as a percentage.

*/ inline void SetPercentProgress(Aws::String&& value) { m_percentProgressHasBeenSet = true; m_percentProgress = std::move(value); } /** *

The progress of the storage optimization operation as a percentage.

*/ inline void SetPercentProgress(const char* value) { m_percentProgressHasBeenSet = true; m_percentProgress.assign(value); } /** *

The progress of the storage optimization operation as a percentage.

*/ inline DBInstance& WithPercentProgress(const Aws::String& value) { SetPercentProgress(value); return *this;} /** *

The progress of the storage optimization operation as a percentage.

*/ inline DBInstance& WithPercentProgress(Aws::String&& value) { SetPercentProgress(std::move(value)); return *this;} /** *

The progress of the storage optimization operation as a percentage.

*/ inline DBInstance& WithPercentProgress(const char* value) { SetPercentProgress(value); return *this;} private: Aws::String m_dBInstanceIdentifier; bool m_dBInstanceIdentifierHasBeenSet = false; Aws::String m_dBInstanceClass; bool m_dBInstanceClassHasBeenSet = false; Aws::String m_engine; bool m_engineHasBeenSet = false; Aws::String m_dBInstanceStatus; bool m_dBInstanceStatusHasBeenSet = false; Aws::Utils::DateTime m_automaticRestartTime; bool m_automaticRestartTimeHasBeenSet = false; Aws::String m_masterUsername; bool m_masterUsernameHasBeenSet = false; Aws::String m_dBName; bool m_dBNameHasBeenSet = false; Endpoint m_endpoint; bool m_endpointHasBeenSet = false; int m_allocatedStorage; bool m_allocatedStorageHasBeenSet = false; Aws::Utils::DateTime m_instanceCreateTime; bool m_instanceCreateTimeHasBeenSet = false; Aws::String m_preferredBackupWindow; bool m_preferredBackupWindowHasBeenSet = false; int m_backupRetentionPeriod; bool m_backupRetentionPeriodHasBeenSet = false; Aws::Vector m_dBSecurityGroups; bool m_dBSecurityGroupsHasBeenSet = false; Aws::Vector m_vpcSecurityGroups; bool m_vpcSecurityGroupsHasBeenSet = false; Aws::Vector m_dBParameterGroups; bool m_dBParameterGroupsHasBeenSet = false; Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet = false; DBSubnetGroup m_dBSubnetGroup; bool m_dBSubnetGroupHasBeenSet = false; Aws::String m_preferredMaintenanceWindow; bool m_preferredMaintenanceWindowHasBeenSet = false; PendingModifiedValues m_pendingModifiedValues; bool m_pendingModifiedValuesHasBeenSet = false; Aws::Utils::DateTime m_latestRestorableTime; bool m_latestRestorableTimeHasBeenSet = false; bool m_multiAZ; bool m_multiAZHasBeenSet = false; Aws::String m_engineVersion; bool m_engineVersionHasBeenSet = false; bool m_autoMinorVersionUpgrade; bool m_autoMinorVersionUpgradeHasBeenSet = false; Aws::String m_readReplicaSourceDBInstanceIdentifier; bool m_readReplicaSourceDBInstanceIdentifierHasBeenSet = false; Aws::Vector m_readReplicaDBInstanceIdentifiers; bool m_readReplicaDBInstanceIdentifiersHasBeenSet = false; Aws::Vector m_readReplicaDBClusterIdentifiers; bool m_readReplicaDBClusterIdentifiersHasBeenSet = false; ReplicaMode m_replicaMode; bool m_replicaModeHasBeenSet = false; Aws::String m_licenseModel; bool m_licenseModelHasBeenSet = false; int m_iops; bool m_iopsHasBeenSet = false; Aws::Vector m_optionGroupMemberships; bool m_optionGroupMembershipsHasBeenSet = false; Aws::String m_characterSetName; bool m_characterSetNameHasBeenSet = false; Aws::String m_ncharCharacterSetName; bool m_ncharCharacterSetNameHasBeenSet = false; Aws::String m_secondaryAvailabilityZone; bool m_secondaryAvailabilityZoneHasBeenSet = false; bool m_publiclyAccessible; bool m_publiclyAccessibleHasBeenSet = false; Aws::Vector m_statusInfos; bool m_statusInfosHasBeenSet = false; Aws::String m_storageType; bool m_storageTypeHasBeenSet = false; Aws::String m_tdeCredentialArn; bool m_tdeCredentialArnHasBeenSet = false; int m_dbInstancePort; bool m_dbInstancePortHasBeenSet = false; Aws::String m_dBClusterIdentifier; bool m_dBClusterIdentifierHasBeenSet = false; bool m_storageEncrypted; bool m_storageEncryptedHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; Aws::String m_dbiResourceId; bool m_dbiResourceIdHasBeenSet = false; Aws::String m_cACertificateIdentifier; bool m_cACertificateIdentifierHasBeenSet = false; Aws::Vector m_domainMemberships; bool m_domainMembershipsHasBeenSet = false; bool m_copyTagsToSnapshot; bool m_copyTagsToSnapshotHasBeenSet = false; int m_monitoringInterval; bool m_monitoringIntervalHasBeenSet = false; Aws::String m_enhancedMonitoringResourceArn; bool m_enhancedMonitoringResourceArnHasBeenSet = false; Aws::String m_monitoringRoleArn; bool m_monitoringRoleArnHasBeenSet = false; int m_promotionTier; bool m_promotionTierHasBeenSet = false; Aws::String m_dBInstanceArn; bool m_dBInstanceArnHasBeenSet = false; Aws::String m_timezone; bool m_timezoneHasBeenSet = false; bool m_iAMDatabaseAuthenticationEnabled; bool m_iAMDatabaseAuthenticationEnabledHasBeenSet = false; bool m_performanceInsightsEnabled; bool m_performanceInsightsEnabledHasBeenSet = false; Aws::String m_performanceInsightsKMSKeyId; bool m_performanceInsightsKMSKeyIdHasBeenSet = false; int m_performanceInsightsRetentionPeriod; bool m_performanceInsightsRetentionPeriodHasBeenSet = false; Aws::Vector m_enabledCloudwatchLogsExports; bool m_enabledCloudwatchLogsExportsHasBeenSet = false; Aws::Vector m_processorFeatures; bool m_processorFeaturesHasBeenSet = false; bool m_deletionProtection; bool m_deletionProtectionHasBeenSet = false; Aws::Vector m_associatedRoles; bool m_associatedRolesHasBeenSet = false; Endpoint m_listenerEndpoint; bool m_listenerEndpointHasBeenSet = false; int m_maxAllocatedStorage; bool m_maxAllocatedStorageHasBeenSet = false; Aws::Vector m_tagList; bool m_tagListHasBeenSet = false; Aws::Vector m_dBInstanceAutomatedBackupsReplications; bool m_dBInstanceAutomatedBackupsReplicationsHasBeenSet = false; bool m_customerOwnedIpEnabled; bool m_customerOwnedIpEnabledHasBeenSet = false; Aws::String m_awsBackupRecoveryPointArn; bool m_awsBackupRecoveryPointArnHasBeenSet = false; ActivityStreamStatus m_activityStreamStatus; bool m_activityStreamStatusHasBeenSet = false; Aws::String m_activityStreamKmsKeyId; bool m_activityStreamKmsKeyIdHasBeenSet = false; Aws::String m_activityStreamKinesisStreamName; bool m_activityStreamKinesisStreamNameHasBeenSet = false; ActivityStreamMode m_activityStreamMode; bool m_activityStreamModeHasBeenSet = false; bool m_activityStreamEngineNativeAuditFieldsIncluded; bool m_activityStreamEngineNativeAuditFieldsIncludedHasBeenSet = false; AutomationMode m_automationMode; bool m_automationModeHasBeenSet = false; Aws::Utils::DateTime m_resumeFullAutomationModeTime; bool m_resumeFullAutomationModeTimeHasBeenSet = false; Aws::String m_customIamInstanceProfile; bool m_customIamInstanceProfileHasBeenSet = false; Aws::String m_backupTarget; bool m_backupTargetHasBeenSet = false; Aws::String m_networkType; bool m_networkTypeHasBeenSet = false; ActivityStreamPolicyStatus m_activityStreamPolicyStatus; bool m_activityStreamPolicyStatusHasBeenSet = false; int m_storageThroughput; bool m_storageThroughputHasBeenSet = false; Aws::String m_dBSystemId; bool m_dBSystemIdHasBeenSet = false; MasterUserSecret m_masterUserSecret; bool m_masterUserSecretHasBeenSet = false; CertificateDetails m_certificateDetails; bool m_certificateDetailsHasBeenSet = false; Aws::String m_readReplicaSourceDBClusterIdentifier; bool m_readReplicaSourceDBClusterIdentifierHasBeenSet = false; Aws::String m_percentProgress; bool m_percentProgressHasBeenSet = false; }; } // namespace Model } // namespace RDS } // namespace Aws