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

Contains the details for an Amazon Neptune DB cluster snapshot

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

See Also:

AWS * API Reference

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline const Aws::String& GetDBClusterSnapshotIdentifier() const{ return m_dBClusterSnapshotIdentifier; } /** *

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline bool DBClusterSnapshotIdentifierHasBeenSet() const { return m_dBClusterSnapshotIdentifierHasBeenSet; } /** *

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline void SetDBClusterSnapshotIdentifier(const Aws::String& value) { m_dBClusterSnapshotIdentifierHasBeenSet = true; m_dBClusterSnapshotIdentifier = value; } /** *

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline void SetDBClusterSnapshotIdentifier(Aws::String&& value) { m_dBClusterSnapshotIdentifierHasBeenSet = true; m_dBClusterSnapshotIdentifier = std::move(value); } /** *

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline void SetDBClusterSnapshotIdentifier(const char* value) { m_dBClusterSnapshotIdentifierHasBeenSet = true; m_dBClusterSnapshotIdentifier.assign(value); } /** *

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline DBClusterSnapshot& WithDBClusterSnapshotIdentifier(const Aws::String& value) { SetDBClusterSnapshotIdentifier(value); return *this;} /** *

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline DBClusterSnapshot& WithDBClusterSnapshotIdentifier(Aws::String&& value) { SetDBClusterSnapshotIdentifier(std::move(value)); return *this;} /** *

Specifies the identifier for a DB cluster snapshot. Must match the identifier * of an existing snapshot.

After you restore a DB cluster using a * DBClusterSnapshotIdentifier, you must specify the same * DBClusterSnapshotIdentifier for any future updates to the DB * cluster. When you specify this property for an update, the DB cluster is not * restored from the snapshot again, and the data in the database is not * changed.

However, if you don't specify the * DBClusterSnapshotIdentifier, an empty DB cluster is created, and * the original DB cluster is deleted. If you specify a property that is different * from the previous snapshot restore property, the DB cluster is restored from the * snapshot specified by the DBClusterSnapshotIdentifier, and the * original DB cluster is deleted.

*/ inline DBClusterSnapshot& WithDBClusterSnapshotIdentifier(const char* value) { SetDBClusterSnapshotIdentifier(value); return *this;} /** *

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Specifies the DB cluster identifier of the DB cluster that this DB cluster * snapshot was created from.

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

Provides the time when the snapshot was taken, in Universal Coordinated Time * (UTC).

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

Provides the time when the snapshot was taken, in Universal Coordinated Time * (UTC).

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

Provides the time when the snapshot was taken, in Universal Coordinated Time * (UTC).

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

Provides the time when the snapshot was taken, in Universal Coordinated Time * (UTC).

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

Provides the time when the snapshot was taken, in Universal Coordinated Time * (UTC).

*/ inline DBClusterSnapshot& WithSnapshotCreateTime(const Aws::Utils::DateTime& value) { SetSnapshotCreateTime(value); return *this;} /** *

Provides the time when the snapshot was taken, in Universal Coordinated Time * (UTC).

*/ inline DBClusterSnapshot& WithSnapshotCreateTime(Aws::Utils::DateTime&& value) { SetSnapshotCreateTime(std::move(value)); return *this;} /** *

Specifies the name of the database engine.

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

Specifies the name of the database engine.

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

Specifies the name of the database engine.

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

Specifies the name of the database engine.

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

Specifies the name of the database engine.

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

Specifies the name of the database engine.

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

Specifies the name of the database engine.

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

Specifies the name of the database engine.

*/ inline DBClusterSnapshot& 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 DBClusterSnapshot& WithAllocatedStorage(int value) { SetAllocatedStorage(value); return *this;} /** *

Specifies the status of this DB cluster snapshot.

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

Specifies the status of this DB cluster snapshot.

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

Specifies the status of this DB cluster snapshot.

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

Specifies the status of this DB cluster snapshot.

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

Specifies the status of this DB cluster snapshot.

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

Specifies the status of this DB cluster snapshot.

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

Specifies the status of this DB cluster snapshot.

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

Specifies the status of this DB cluster snapshot.

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

Specifies the port that the DB cluster was listening on at the time of the * snapshot.

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

Specifies the port that the DB cluster was listening on at the time of the * snapshot.

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

Specifies the port that the DB cluster was listening on at the time of the * snapshot.

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

Specifies the port that the DB cluster was listening on at the time of the * snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

Provides the VPC ID associated with the DB cluster snapshot.

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

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

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

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

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

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

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

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

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

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

*/ inline DBClusterSnapshot& WithClusterCreateTime(const Aws::Utils::DateTime& value) { SetClusterCreateTime(value); return *this;} /** *

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

*/ inline DBClusterSnapshot& WithClusterCreateTime(Aws::Utils::DateTime&& value) { SetClusterCreateTime(std::move(value)); return *this;} /** *

Not supported by Neptune.

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

Not supported by Neptune.

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

Not supported by Neptune.

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

Not supported by Neptune.

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

Not supported by Neptune.

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

Not supported by Neptune.

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

Not supported by Neptune.

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

Not supported by Neptune.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the version of the database engine for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the license model information for this DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

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

Provides the type of the DB cluster snapshot.

*/ inline DBClusterSnapshot& 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 DBClusterSnapshot& WithPercentProgress(int value) { SetPercentProgress(value); return *this;} /** *

Specifies whether the DB cluster snapshot is encrypted.

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

Specifies whether the DB cluster snapshot is encrypted.

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

Specifies whether the DB cluster snapshot is encrypted.

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

Specifies whether the DB cluster snapshot is encrypted.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

*/ inline const Aws::String& GetDBClusterSnapshotArn() const{ return m_dBClusterSnapshotArn; } /** *

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

*/ inline bool DBClusterSnapshotArnHasBeenSet() const { return m_dBClusterSnapshotArnHasBeenSet; } /** *

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

*/ inline void SetDBClusterSnapshotArn(const Aws::String& value) { m_dBClusterSnapshotArnHasBeenSet = true; m_dBClusterSnapshotArn = value; } /** *

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

*/ inline void SetDBClusterSnapshotArn(Aws::String&& value) { m_dBClusterSnapshotArnHasBeenSet = true; m_dBClusterSnapshotArn = std::move(value); } /** *

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

*/ inline void SetDBClusterSnapshotArn(const char* value) { m_dBClusterSnapshotArnHasBeenSet = true; m_dBClusterSnapshotArn.assign(value); } /** *

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

*/ inline DBClusterSnapshot& WithDBClusterSnapshotArn(const Aws::String& value) { SetDBClusterSnapshotArn(value); return *this;} /** *

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

*/ inline DBClusterSnapshot& WithDBClusterSnapshotArn(Aws::String&& value) { SetDBClusterSnapshotArn(std::move(value)); return *this;} /** *

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

*/ inline DBClusterSnapshot& WithDBClusterSnapshotArn(const char* value) { SetDBClusterSnapshotArn(value); return *this;} /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline const Aws::String& GetSourceDBClusterSnapshotArn() const{ return m_sourceDBClusterSnapshotArn; } /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline bool SourceDBClusterSnapshotArnHasBeenSet() const { return m_sourceDBClusterSnapshotArnHasBeenSet; } /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline void SetSourceDBClusterSnapshotArn(const Aws::String& value) { m_sourceDBClusterSnapshotArnHasBeenSet = true; m_sourceDBClusterSnapshotArn = value; } /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline void SetSourceDBClusterSnapshotArn(Aws::String&& value) { m_sourceDBClusterSnapshotArnHasBeenSet = true; m_sourceDBClusterSnapshotArn = std::move(value); } /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline void SetSourceDBClusterSnapshotArn(const char* value) { m_sourceDBClusterSnapshotArnHasBeenSet = true; m_sourceDBClusterSnapshotArn.assign(value); } /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline DBClusterSnapshot& WithSourceDBClusterSnapshotArn(const Aws::String& value) { SetSourceDBClusterSnapshotArn(value); return *this;} /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline DBClusterSnapshot& WithSourceDBClusterSnapshotArn(Aws::String&& value) { SetSourceDBClusterSnapshotArn(std::move(value)); return *this;} /** *

If the DB cluster snapshot was copied from a source DB cluster snapshot, the * Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null * value.

*/ inline DBClusterSnapshot& WithSourceDBClusterSnapshotArn(const char* value) { SetSourceDBClusterSnapshotArn(value); return *this;} /** *

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

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

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

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

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

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

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

*/ inline DBClusterSnapshot& WithIAMDatabaseAuthenticationEnabled(bool value) { SetIAMDatabaseAuthenticationEnabled(value); return *this;} private: Aws::Vector m_availabilityZones; bool m_availabilityZonesHasBeenSet = false; Aws::String m_dBClusterSnapshotIdentifier; bool m_dBClusterSnapshotIdentifierHasBeenSet = false; Aws::String m_dBClusterIdentifier; bool m_dBClusterIdentifierHasBeenSet = false; Aws::Utils::DateTime 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::Utils::DateTime 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_dBClusterSnapshotArn; bool m_dBClusterSnapshotArnHasBeenSet = false; Aws::String m_sourceDBClusterSnapshotArn; bool m_sourceDBClusterSnapshotArnHasBeenSet = false; bool m_iAMDatabaseAuthenticationEnabled; bool m_iAMDatabaseAuthenticationEnabledHasBeenSet = false; }; } // namespace Model } // namespace Neptune } // namespace Aws