/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Configuration information for delivery of data set contents to Amazon
* S3.See Also:
AWS
* API Reference
The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline const Aws::String& GetBucket() const{ return m_bucket; } /** *The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** *The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** *The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** *The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** *The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline S3DestinationConfiguration& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** *The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline S3DestinationConfiguration& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** *The name of the Amazon S3 bucket to which data set contents are * delivered.
*/ inline S3DestinationConfiguration& WithBucket(const char* value) { SetBucket(value); return *this;} /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline const Aws::String& GetKey() const{ return m_key; } /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline S3DestinationConfiguration& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline S3DestinationConfiguration& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** *The key of the data set contents object. Each object in an Amazon S3 bucket * has a key that is its unique identifier within the bucket (each object in a * bucket has exactly one key). To produce a unique key, you can use * "!{iotanalytics:scheduledTime}" to insert the time of the scheduled SQL query * run, or "!{iotanalytics:versioned} to insert a unique hash identifying the data * set, for example: * "/DataSet/!{iotanalytics:scheduledTime}/!{iotanalytics:versioned}.csv".
*/ inline S3DestinationConfiguration& WithKey(const char* value) { SetKey(value); return *this;} /** *Configuration information for coordination with the AWS Glue ETL (extract, * transform and load) service.
*/ inline const GlueConfiguration& GetGlueConfiguration() const{ return m_glueConfiguration; } /** *Configuration information for coordination with the AWS Glue ETL (extract, * transform and load) service.
*/ inline bool GlueConfigurationHasBeenSet() const { return m_glueConfigurationHasBeenSet; } /** *Configuration information for coordination with the AWS Glue ETL (extract, * transform and load) service.
*/ inline void SetGlueConfiguration(const GlueConfiguration& value) { m_glueConfigurationHasBeenSet = true; m_glueConfiguration = value; } /** *Configuration information for coordination with the AWS Glue ETL (extract, * transform and load) service.
*/ inline void SetGlueConfiguration(GlueConfiguration&& value) { m_glueConfigurationHasBeenSet = true; m_glueConfiguration = std::move(value); } /** *Configuration information for coordination with the AWS Glue ETL (extract, * transform and load) service.
*/ inline S3DestinationConfiguration& WithGlueConfiguration(const GlueConfiguration& value) { SetGlueConfiguration(value); return *this;} /** *Configuration information for coordination with the AWS Glue ETL (extract, * transform and load) service.
*/ inline S3DestinationConfiguration& WithGlueConfiguration(GlueConfiguration&& value) { SetGlueConfiguration(std::move(value)); return *this;} /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline S3DestinationConfiguration& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline S3DestinationConfiguration& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *The ARN of the role which grants AWS IoT Analytics permission to interact * with your Amazon S3 and AWS Glue resources.
*/ inline S3DestinationConfiguration& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} private: Aws::String m_bucket; bool m_bucketHasBeenSet; Aws::String m_key; bool m_keyHasBeenSet; GlueConfiguration m_glueConfiguration; bool m_glueConfigurationHasBeenSet; Aws::String m_roleArn; bool m_roleArnHasBeenSet; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws