/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Used to store channel data in an S3 bucket that you manage. If
* customer-managed storage is selected, the retentionPeriod
parameter
* is ignored. You can't change the choice of S3 storage after the data store is
* created.See Also:
AWS
* API Reference
The name of the S3 bucket in which channel data is stored.
*/ inline const Aws::String& GetBucket() const{ return m_bucket; } /** *The name of the S3 bucket in which channel data is stored.
*/ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** *The name of the S3 bucket in which channel data is stored.
*/ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** *The name of the S3 bucket in which channel data is stored.
*/ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** *The name of the S3 bucket in which channel data is stored.
*/ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** *The name of the S3 bucket in which channel data is stored.
*/ inline CustomerManagedChannelS3Storage& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** *The name of the S3 bucket in which channel data is stored.
*/ inline CustomerManagedChannelS3Storage& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** *The name of the S3 bucket in which channel data is stored.
*/ inline CustomerManagedChannelS3Storage& WithBucket(const char* value) { SetBucket(value); return *this;} /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline const Aws::String& GetKeyPrefix() const{ return m_keyPrefix; } /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline bool KeyPrefixHasBeenSet() const { return m_keyPrefixHasBeenSet; } /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline void SetKeyPrefix(const Aws::String& value) { m_keyPrefixHasBeenSet = true; m_keyPrefix = value; } /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline void SetKeyPrefix(Aws::String&& value) { m_keyPrefixHasBeenSet = true; m_keyPrefix = std::move(value); } /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline void SetKeyPrefix(const char* value) { m_keyPrefixHasBeenSet = true; m_keyPrefix.assign(value); } /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline CustomerManagedChannelS3Storage& WithKeyPrefix(const Aws::String& value) { SetKeyPrefix(value); return *this;} /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline CustomerManagedChannelS3Storage& WithKeyPrefix(Aws::String&& value) { SetKeyPrefix(std::move(value)); return *this;} /** *(Optional) The prefix used to create the keys of the channel data objects. * Each object in an S3 bucket has a key that is its unique identifier in the * bucket. Each object in a bucket has exactly one key. The prefix must end with a * forward slash (/).
*/ inline CustomerManagedChannelS3Storage& WithKeyPrefix(const char* value) { SetKeyPrefix(value); return *this;} /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline CustomerManagedChannelS3Storage& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline CustomerManagedChannelS3Storage& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *The ARN of the role that grants IoT Analytics permission to interact with * your Amazon S3 resources.
*/ inline CustomerManagedChannelS3Storage& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} private: Aws::String m_bucket; bool m_bucketHasBeenSet = false; Aws::String m_keyPrefix; bool m_keyPrefixHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws