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

Information about an Amazon RDS DB cluster snapshot.

See Also:

* AWS * API Reference

*/ class AwsRdsDbClusterSnapshotDetails { public: AWS_SECURITYHUB_API AwsRdsDbClusterSnapshotDetails(); AWS_SECURITYHUB_API AwsRdsDbClusterSnapshotDetails(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsRdsDbClusterSnapshotDetails& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline const Aws::Vector& GetAvailabilityZones() const{ return m_availabilityZones; } /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; } /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline void SetAvailabilityZones(const Aws::Vector& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; } /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline void SetAvailabilityZones(Aws::Vector&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::move(value); } /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline AwsRdsDbClusterSnapshotDetails& WithAvailabilityZones(const Aws::Vector& value) { SetAvailabilityZones(value); return *this;} /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline AwsRdsDbClusterSnapshotDetails& WithAvailabilityZones(Aws::Vector&& value) { SetAvailabilityZones(std::move(value)); return *this;} /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline AwsRdsDbClusterSnapshotDetails& AddAvailabilityZones(const Aws::String& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; } /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline AwsRdsDbClusterSnapshotDetails& AddAvailabilityZones(Aws::String&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(std::move(value)); return *this; } /** *

A list of Availability Zones where instances in the DB cluster can be * created.

*/ inline AwsRdsDbClusterSnapshotDetails& AddAvailabilityZones(const char* value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; } /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline const Aws::String& GetSnapshotCreateTime() const{ return m_snapshotCreateTime; } /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline bool SnapshotCreateTimeHasBeenSet() const { return m_snapshotCreateTimeHasBeenSet; } /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetSnapshotCreateTime(const Aws::String& value) { m_snapshotCreateTimeHasBeenSet = true; m_snapshotCreateTime = value; } /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetSnapshotCreateTime(Aws::String&& value) { m_snapshotCreateTimeHasBeenSet = true; m_snapshotCreateTime = std::move(value); } /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetSnapshotCreateTime(const char* value) { m_snapshotCreateTimeHasBeenSet = true; m_snapshotCreateTime.assign(value); } /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsRdsDbClusterSnapshotDetails& WithSnapshotCreateTime(const Aws::String& value) { SetSnapshotCreateTime(value); return *this;} /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsRdsDbClusterSnapshotDetails& WithSnapshotCreateTime(Aws::String&& value) { SetSnapshotCreateTime(std::move(value)); return *this;} /** *

Indicates when the snapshot was taken.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsRdsDbClusterSnapshotDetails& WithSnapshotCreateTime(const char* value) { SetSnapshotCreateTime(value); return *this;} /** *

The name of the database engine that you want to use for this DB * instance.

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

The name of the database engine that you want to use for this DB * instance.

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

The name of the database engine that you want to use for this DB * instance.

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

The name of the database engine that you want to use for this DB * instance.

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

The name of the database engine that you want to use for this DB * instance.

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

The name of the database engine that you want to use for this DB * instance.

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

The name of the database engine that you want to use for this DB * instance.

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

The name of the database engine that you want to use for this DB * instance.

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

Specifies the allocated storage size in gibibytes (GiB).

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

Specifies the allocated storage size in gibibytes (GiB).

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

Specifies the allocated storage size in gibibytes (GiB).

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

Specifies the allocated storage size in gibibytes (GiB).

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

The status of this DB cluster snapshot.

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

The status of this DB cluster snapshot.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of this DB cluster snapshot.

*/ inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of this DB cluster snapshot.

*/ inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of this DB cluster snapshot.

*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *

The status of this DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

The status of this DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

The status of this DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithStatus(const char* value) { SetStatus(value); return *this;} /** *

The port number on which the DB instances in the DB cluster accept * connections.

*/ inline int GetPort() const{ return m_port; } /** *

The port number on which the DB instances in the DB cluster accept * connections.

*/ inline bool PortHasBeenSet() const { return m_portHasBeenSet; } /** *

The port number on which the DB instances in the DB cluster accept * connections.

*/ inline void SetPort(int value) { m_portHasBeenSet = true; m_port = value; } /** *

The port number on which the DB instances in the DB cluster accept * connections.

*/ inline AwsRdsDbClusterSnapshotDetails& WithPort(int value) { SetPort(value); return *this;} /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline const Aws::String& GetVpcId() const{ return m_vpcId; } /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; } /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; } /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); } /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); } /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} /** *

The VPC ID that is associated with the DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithVpcId(const char* value) { SetVpcId(value); return *this;} /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline const Aws::String& GetClusterCreateTime() const{ return m_clusterCreateTime; } /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline bool ClusterCreateTimeHasBeenSet() const { return m_clusterCreateTimeHasBeenSet; } /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetClusterCreateTime(const Aws::String& value) { m_clusterCreateTimeHasBeenSet = true; m_clusterCreateTime = value; } /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetClusterCreateTime(Aws::String&& value) { m_clusterCreateTimeHasBeenSet = true; m_clusterCreateTime = std::move(value); } /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetClusterCreateTime(const char* value) { m_clusterCreateTimeHasBeenSet = true; m_clusterCreateTime.assign(value); } /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsRdsDbClusterSnapshotDetails& WithClusterCreateTime(const Aws::String& value) { SetClusterCreateTime(value); return *this;} /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsRdsDbClusterSnapshotDetails& WithClusterCreateTime(Aws::String&& value) { SetClusterCreateTime(std::move(value)); return *this;} /** *

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

Uses the date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsRdsDbClusterSnapshotDetails& WithClusterCreateTime(const char* value) { SetClusterCreateTime(value); return *this;} /** *

The name of the master user for the DB cluster.

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

The name of the master user for the DB cluster.

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

The name of the master user for the DB cluster.

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

The name of the master user for the DB cluster.

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

The name of the master user for the DB cluster.

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

The name of the master user for the DB cluster.

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

The name of the master user for the DB cluster.

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

The name of the master user for the DB cluster.

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

The version of the database engine to use.

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

The version of the database engine to use.

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

The version of the database engine to use.

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

The version of the database engine to use.

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

The version of the database engine to use.

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

The version of the database engine to use.

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

The version of the database engine to use.

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

The version of the database engine to use.

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

The license model information for this DB cluster snapshot.

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

The license model information for this DB cluster snapshot.

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

The license model information for this DB cluster snapshot.

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

The license model information for this DB cluster snapshot.

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

The license model information for this DB cluster snapshot.

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

The license model information for this DB cluster snapshot.

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

The license model information for this DB cluster snapshot.

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

The license model information for this DB cluster snapshot.

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

The type of DB cluster snapshot.

*/ inline const Aws::String& GetSnapshotType() const{ return m_snapshotType; } /** *

The type of DB cluster snapshot.

*/ inline bool SnapshotTypeHasBeenSet() const { return m_snapshotTypeHasBeenSet; } /** *

The type of DB cluster snapshot.

*/ inline void SetSnapshotType(const Aws::String& value) { m_snapshotTypeHasBeenSet = true; m_snapshotType = value; } /** *

The type of DB cluster snapshot.

*/ inline void SetSnapshotType(Aws::String&& value) { m_snapshotTypeHasBeenSet = true; m_snapshotType = std::move(value); } /** *

The type of DB cluster snapshot.

*/ inline void SetSnapshotType(const char* value) { m_snapshotTypeHasBeenSet = true; m_snapshotType.assign(value); } /** *

The type of DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithSnapshotType(const Aws::String& value) { SetSnapshotType(value); return *this;} /** *

The type of DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithSnapshotType(Aws::String&& value) { SetSnapshotType(std::move(value)); return *this;} /** *

The type of DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithSnapshotType(const char* value) { SetSnapshotType(value); return *this;} /** *

Specifies the percentage of the estimated data that has been transferred.

*/ inline int GetPercentProgress() const{ return m_percentProgress; } /** *

Specifies the percentage of the estimated data that has been transferred.

*/ inline bool PercentProgressHasBeenSet() const { return m_percentProgressHasBeenSet; } /** *

Specifies the percentage of the estimated data that has been transferred.

*/ inline void SetPercentProgress(int value) { m_percentProgressHasBeenSet = true; m_percentProgress = value; } /** *

Specifies the percentage of the estimated data that has been transferred.

*/ inline AwsRdsDbClusterSnapshotDetails& WithPercentProgress(int value) { SetPercentProgress(value); return *this;} /** *

Whether the DB cluster is encrypted.

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

Whether the DB cluster is encrypted.

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

Whether the DB cluster is encrypted.

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

Whether the DB cluster is encrypted.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The ARN of the KMS master key that is used to encrypt the database instances * in the DB cluster.

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

The DB cluster identifier.

*/ inline const Aws::String& GetDbClusterIdentifier() const{ return m_dbClusterIdentifier; } /** *

The DB cluster identifier.

*/ inline bool DbClusterIdentifierHasBeenSet() const { return m_dbClusterIdentifierHasBeenSet; } /** *

The DB cluster identifier.

*/ inline void SetDbClusterIdentifier(const Aws::String& value) { m_dbClusterIdentifierHasBeenSet = true; m_dbClusterIdentifier = value; } /** *

The DB cluster identifier.

*/ inline void SetDbClusterIdentifier(Aws::String&& value) { m_dbClusterIdentifierHasBeenSet = true; m_dbClusterIdentifier = std::move(value); } /** *

The DB cluster identifier.

*/ inline void SetDbClusterIdentifier(const char* value) { m_dbClusterIdentifierHasBeenSet = true; m_dbClusterIdentifier.assign(value); } /** *

The DB cluster identifier.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterIdentifier(const Aws::String& value) { SetDbClusterIdentifier(value); return *this;} /** *

The DB cluster identifier.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterIdentifier(Aws::String&& value) { SetDbClusterIdentifier(std::move(value)); return *this;} /** *

The DB cluster identifier.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterIdentifier(const char* value) { SetDbClusterIdentifier(value); return *this;} /** *

The identifier of the DB cluster snapshot.

*/ inline const Aws::String& GetDbClusterSnapshotIdentifier() const{ return m_dbClusterSnapshotIdentifier; } /** *

The identifier of the DB cluster snapshot.

*/ inline bool DbClusterSnapshotIdentifierHasBeenSet() const { return m_dbClusterSnapshotIdentifierHasBeenSet; } /** *

The identifier of the DB cluster snapshot.

*/ inline void SetDbClusterSnapshotIdentifier(const Aws::String& value) { m_dbClusterSnapshotIdentifierHasBeenSet = true; m_dbClusterSnapshotIdentifier = value; } /** *

The identifier of the DB cluster snapshot.

*/ inline void SetDbClusterSnapshotIdentifier(Aws::String&& value) { m_dbClusterSnapshotIdentifierHasBeenSet = true; m_dbClusterSnapshotIdentifier = std::move(value); } /** *

The identifier of the DB cluster snapshot.

*/ inline void SetDbClusterSnapshotIdentifier(const char* value) { m_dbClusterSnapshotIdentifierHasBeenSet = true; m_dbClusterSnapshotIdentifier.assign(value); } /** *

The identifier of the DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterSnapshotIdentifier(const Aws::String& value) { SetDbClusterSnapshotIdentifier(value); return *this;} /** *

The identifier of the DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterSnapshotIdentifier(Aws::String&& value) { SetDbClusterSnapshotIdentifier(std::move(value)); return *this;} /** *

The identifier of the DB cluster snapshot.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterSnapshotIdentifier(const char* value) { SetDbClusterSnapshotIdentifier(value); return *this;} /** *

Whether mapping of IAM accounts to database accounts is enabled.

*/ inline bool GetIamDatabaseAuthenticationEnabled() const{ return m_iamDatabaseAuthenticationEnabled; } /** *

Whether mapping of IAM accounts to database accounts is enabled.

*/ inline bool IamDatabaseAuthenticationEnabledHasBeenSet() const { return m_iamDatabaseAuthenticationEnabledHasBeenSet; } /** *

Whether mapping of IAM accounts to database accounts is enabled.

*/ inline void SetIamDatabaseAuthenticationEnabled(bool value) { m_iamDatabaseAuthenticationEnabledHasBeenSet = true; m_iamDatabaseAuthenticationEnabled = value; } /** *

Whether mapping of IAM accounts to database accounts is enabled.

*/ inline AwsRdsDbClusterSnapshotDetails& WithIamDatabaseAuthenticationEnabled(bool value) { SetIamDatabaseAuthenticationEnabled(value); return *this;} /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline const Aws::Vector& GetDbClusterSnapshotAttributes() const{ return m_dbClusterSnapshotAttributes; } /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline bool DbClusterSnapshotAttributesHasBeenSet() const { return m_dbClusterSnapshotAttributesHasBeenSet; } /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline void SetDbClusterSnapshotAttributes(const Aws::Vector& value) { m_dbClusterSnapshotAttributesHasBeenSet = true; m_dbClusterSnapshotAttributes = value; } /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline void SetDbClusterSnapshotAttributes(Aws::Vector&& value) { m_dbClusterSnapshotAttributesHasBeenSet = true; m_dbClusterSnapshotAttributes = std::move(value); } /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterSnapshotAttributes(const Aws::Vector& value) { SetDbClusterSnapshotAttributes(value); return *this;} /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline AwsRdsDbClusterSnapshotDetails& WithDbClusterSnapshotAttributes(Aws::Vector&& value) { SetDbClusterSnapshotAttributes(std::move(value)); return *this;} /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline AwsRdsDbClusterSnapshotDetails& AddDbClusterSnapshotAttributes(const AwsRdsDbClusterSnapshotDbClusterSnapshotAttribute& value) { m_dbClusterSnapshotAttributesHasBeenSet = true; m_dbClusterSnapshotAttributes.push_back(value); return *this; } /** *

Contains the name and values of a manual DB cluster snapshot attribute.

*/ inline AwsRdsDbClusterSnapshotDetails& AddDbClusterSnapshotAttributes(AwsRdsDbClusterSnapshotDbClusterSnapshotAttribute&& value) { m_dbClusterSnapshotAttributesHasBeenSet = true; m_dbClusterSnapshotAttributes.push_back(std::move(value)); return *this; } private: Aws::Vector m_availabilityZones; bool m_availabilityZonesHasBeenSet = false; Aws::String m_snapshotCreateTime; bool m_snapshotCreateTimeHasBeenSet = false; Aws::String m_engine; bool m_engineHasBeenSet = false; int m_allocatedStorage; bool m_allocatedStorageHasBeenSet = false; Aws::String m_status; bool m_statusHasBeenSet = false; int m_port; bool m_portHasBeenSet = false; Aws::String m_vpcId; bool m_vpcIdHasBeenSet = false; Aws::String m_clusterCreateTime; bool m_clusterCreateTimeHasBeenSet = false; Aws::String m_masterUsername; bool m_masterUsernameHasBeenSet = false; Aws::String m_engineVersion; bool m_engineVersionHasBeenSet = false; Aws::String m_licenseModel; bool m_licenseModelHasBeenSet = false; Aws::String m_snapshotType; bool m_snapshotTypeHasBeenSet = false; int m_percentProgress; bool m_percentProgressHasBeenSet = false; bool m_storageEncrypted; bool m_storageEncryptedHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; Aws::String m_dbClusterIdentifier; bool m_dbClusterIdentifierHasBeenSet = false; Aws::String m_dbClusterSnapshotIdentifier; bool m_dbClusterSnapshotIdentifierHasBeenSet = false; bool m_iamDatabaseAuthenticationEnabled; bool m_iamDatabaseAuthenticationEnabledHasBeenSet = false; Aws::Vector m_dbClusterSnapshotAttributes; bool m_dbClusterSnapshotAttributesHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws