/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The configuration for publishing Amazon CloudWatch Internet Monitor internet
* measurements to Amazon S3. The configuration includes the bucket name and
* (optionally) prefix for the S3 bucket to store the measurements, and the
* delivery status. The delivery status is ENABLED
or
* DISABLED
, depending on whether you choose to deliver internet
* measurements to S3 logs.See Also:
AWS
* API Reference
The Amazon S3 bucket name.
*/ inline const Aws::String& GetBucketName() const{ return m_bucketName; } /** *The Amazon S3 bucket name.
*/ inline bool BucketNameHasBeenSet() const { return m_bucketNameHasBeenSet; } /** *The Amazon S3 bucket name.
*/ inline void SetBucketName(const Aws::String& value) { m_bucketNameHasBeenSet = true; m_bucketName = value; } /** *The Amazon S3 bucket name.
*/ inline void SetBucketName(Aws::String&& value) { m_bucketNameHasBeenSet = true; m_bucketName = std::move(value); } /** *The Amazon S3 bucket name.
*/ inline void SetBucketName(const char* value) { m_bucketNameHasBeenSet = true; m_bucketName.assign(value); } /** *The Amazon S3 bucket name.
*/ inline S3Config& WithBucketName(const Aws::String& value) { SetBucketName(value); return *this;} /** *The Amazon S3 bucket name.
*/ inline S3Config& WithBucketName(Aws::String&& value) { SetBucketName(std::move(value)); return *this;} /** *The Amazon S3 bucket name.
*/ inline S3Config& WithBucketName(const char* value) { SetBucketName(value); return *this;} /** *The Amazon S3 bucket prefix.
*/ inline const Aws::String& GetBucketPrefix() const{ return m_bucketPrefix; } /** *The Amazon S3 bucket prefix.
*/ inline bool BucketPrefixHasBeenSet() const { return m_bucketPrefixHasBeenSet; } /** *The Amazon S3 bucket prefix.
*/ inline void SetBucketPrefix(const Aws::String& value) { m_bucketPrefixHasBeenSet = true; m_bucketPrefix = value; } /** *The Amazon S3 bucket prefix.
*/ inline void SetBucketPrefix(Aws::String&& value) { m_bucketPrefixHasBeenSet = true; m_bucketPrefix = std::move(value); } /** *The Amazon S3 bucket prefix.
*/ inline void SetBucketPrefix(const char* value) { m_bucketPrefixHasBeenSet = true; m_bucketPrefix.assign(value); } /** *The Amazon S3 bucket prefix.
*/ inline S3Config& WithBucketPrefix(const Aws::String& value) { SetBucketPrefix(value); return *this;} /** *The Amazon S3 bucket prefix.
*/ inline S3Config& WithBucketPrefix(Aws::String&& value) { SetBucketPrefix(std::move(value)); return *this;} /** *The Amazon S3 bucket prefix.
*/ inline S3Config& WithBucketPrefix(const char* value) { SetBucketPrefix(value); return *this;} /** *The status of publishing Internet Monitor internet measurements to an Amazon * S3 bucket.
*/ inline const LogDeliveryStatus& GetLogDeliveryStatus() const{ return m_logDeliveryStatus; } /** *The status of publishing Internet Monitor internet measurements to an Amazon * S3 bucket.
*/ inline bool LogDeliveryStatusHasBeenSet() const { return m_logDeliveryStatusHasBeenSet; } /** *The status of publishing Internet Monitor internet measurements to an Amazon * S3 bucket.
*/ inline void SetLogDeliveryStatus(const LogDeliveryStatus& value) { m_logDeliveryStatusHasBeenSet = true; m_logDeliveryStatus = value; } /** *The status of publishing Internet Monitor internet measurements to an Amazon * S3 bucket.
*/ inline void SetLogDeliveryStatus(LogDeliveryStatus&& value) { m_logDeliveryStatusHasBeenSet = true; m_logDeliveryStatus = std::move(value); } /** *The status of publishing Internet Monitor internet measurements to an Amazon * S3 bucket.
*/ inline S3Config& WithLogDeliveryStatus(const LogDeliveryStatus& value) { SetLogDeliveryStatus(value); return *this;} /** *The status of publishing Internet Monitor internet measurements to an Amazon * S3 bucket.
*/ inline S3Config& WithLogDeliveryStatus(LogDeliveryStatus&& value) { SetLogDeliveryStatus(std::move(value)); return *this;} private: Aws::String m_bucketName; bool m_bucketNameHasBeenSet = false; Aws::String m_bucketPrefix; bool m_bucketPrefixHasBeenSet = false; LogDeliveryStatus m_logDeliveryStatus; bool m_logDeliveryStatusHasBeenSet = false; }; } // namespace Model } // namespace InternetMonitor } // namespace Aws