/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A container for the bucket where the Amazon S3 Storage Lens metrics export
* files are located.See Also:
AWS
* API Reference
The schema version of the export file.
*/ inline const OutputSchemaVersion& GetOutputSchemaVersion() const{ return m_outputSchemaVersion; } /** *The schema version of the export file.
*/ inline bool OutputSchemaVersionHasBeenSet() const { return m_outputSchemaVersionHasBeenSet; } /** *The schema version of the export file.
*/ inline void SetOutputSchemaVersion(const OutputSchemaVersion& value) { m_outputSchemaVersionHasBeenSet = true; m_outputSchemaVersion = value; } /** *The schema version of the export file.
*/ inline void SetOutputSchemaVersion(OutputSchemaVersion&& value) { m_outputSchemaVersionHasBeenSet = true; m_outputSchemaVersion = std::move(value); } /** *The schema version of the export file.
*/ inline S3BucketDestination& WithOutputSchemaVersion(const OutputSchemaVersion& value) { SetOutputSchemaVersion(value); return *this;} /** *The schema version of the export file.
*/ inline S3BucketDestination& WithOutputSchemaVersion(OutputSchemaVersion&& value) { SetOutputSchemaVersion(std::move(value)); return *this;} /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline const Aws::String& GetAccountId() const{ return m_accountId; } /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline S3BucketDestination& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline S3BucketDestination& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} /** *The account ID of the owner of the S3 Storage Lens metrics export bucket.
*/ inline S3BucketDestination& WithAccountId(const char* value) { SetAccountId(value); return *this;} /** *The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The Amazon Resource Name (ARN) of the bucket. This property is read-only and
* follows the following format:
* arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name
*
The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline const Aws::String& GetPrefix() const{ return m_prefix; } /** *The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; } /** *The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; } /** *The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = std::move(value); } /** *The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); } /** *The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline S3BucketDestination& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;} /** *The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline S3BucketDestination& WithPrefix(Aws::String&& value) { SetPrefix(std::move(value)); return *this;} /** *The prefix of the destination bucket where the metrics export will be * delivered.
*/ inline S3BucketDestination& WithPrefix(const char* value) { SetPrefix(value); return *this;} /** *The container for the type encryption of the metrics exports in this * bucket.
*/ inline const StorageLensDataExportEncryption& GetEncryption() const{ return m_encryption; } /** *The container for the type encryption of the metrics exports in this * bucket.
*/ inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; } /** *The container for the type encryption of the metrics exports in this * bucket.
*/ inline void SetEncryption(const StorageLensDataExportEncryption& value) { m_encryptionHasBeenSet = true; m_encryption = value; } /** *The container for the type encryption of the metrics exports in this * bucket.
*/ inline void SetEncryption(StorageLensDataExportEncryption&& value) { m_encryptionHasBeenSet = true; m_encryption = std::move(value); } /** *The container for the type encryption of the metrics exports in this * bucket.
*/ inline S3BucketDestination& WithEncryption(const StorageLensDataExportEncryption& value) { SetEncryption(value); return *this;} /** *The container for the type encryption of the metrics exports in this * bucket.
*/ inline S3BucketDestination& WithEncryption(StorageLensDataExportEncryption&& value) { SetEncryption(std::move(value)); return *this;} private: Format m_format; bool m_formatHasBeenSet = false; OutputSchemaVersion m_outputSchemaVersion; bool m_outputSchemaVersionHasBeenSet = false; Aws::String m_accountId; bool m_accountIdHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_prefix; bool m_prefixHasBeenSet = false; StorageLensDataExportEncryption m_encryption; bool m_encryptionHasBeenSet = false; }; } // namespace Model } // namespace S3Control } // namespace Aws