/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include For a SQL-based Kinesis Data Analytics application, describes the reference
* data source by providing the source information (Amazon S3 bucket name and
* object key name), the resulting in-application table name that is created, and
* the necessary schema to map the data elements in the Amazon S3 object to the
* in-application table.See Also:
AWS
* API Reference
The name of the in-application table to create.
*/ inline const Aws::String& GetTableName() const{ return m_tableName; } /** *The name of the in-application table to create.
*/ inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; } /** *The name of the in-application table to create.
*/ inline void SetTableName(const Aws::String& value) { m_tableNameHasBeenSet = true; m_tableName = value; } /** *The name of the in-application table to create.
*/ inline void SetTableName(Aws::String&& value) { m_tableNameHasBeenSet = true; m_tableName = std::move(value); } /** *The name of the in-application table to create.
*/ inline void SetTableName(const char* value) { m_tableNameHasBeenSet = true; m_tableName.assign(value); } /** *The name of the in-application table to create.
*/ inline ReferenceDataSource& WithTableName(const Aws::String& value) { SetTableName(value); return *this;} /** *The name of the in-application table to create.
*/ inline ReferenceDataSource& WithTableName(Aws::String&& value) { SetTableName(std::move(value)); return *this;} /** *The name of the in-application table to create.
*/ inline ReferenceDataSource& WithTableName(const char* value) { SetTableName(value); return *this;} /** *Identifies the S3 bucket and object that contains the reference data. A * Kinesis Data Analytics application loads reference data only once. If the data * changes, you call the UpdateApplication operation to trigger reloading of * data into your application.
*/ inline const S3ReferenceDataSource& GetS3ReferenceDataSource() const{ return m_s3ReferenceDataSource; } /** *Identifies the S3 bucket and object that contains the reference data. A * Kinesis Data Analytics application loads reference data only once. If the data * changes, you call the UpdateApplication operation to trigger reloading of * data into your application.
*/ inline bool S3ReferenceDataSourceHasBeenSet() const { return m_s3ReferenceDataSourceHasBeenSet; } /** *Identifies the S3 bucket and object that contains the reference data. A * Kinesis Data Analytics application loads reference data only once. If the data * changes, you call the UpdateApplication operation to trigger reloading of * data into your application.
*/ inline void SetS3ReferenceDataSource(const S3ReferenceDataSource& value) { m_s3ReferenceDataSourceHasBeenSet = true; m_s3ReferenceDataSource = value; } /** *Identifies the S3 bucket and object that contains the reference data. A * Kinesis Data Analytics application loads reference data only once. If the data * changes, you call the UpdateApplication operation to trigger reloading of * data into your application.
*/ inline void SetS3ReferenceDataSource(S3ReferenceDataSource&& value) { m_s3ReferenceDataSourceHasBeenSet = true; m_s3ReferenceDataSource = std::move(value); } /** *Identifies the S3 bucket and object that contains the reference data. A * Kinesis Data Analytics application loads reference data only once. If the data * changes, you call the UpdateApplication operation to trigger reloading of * data into your application.
*/ inline ReferenceDataSource& WithS3ReferenceDataSource(const S3ReferenceDataSource& value) { SetS3ReferenceDataSource(value); return *this;} /** *Identifies the S3 bucket and object that contains the reference data. A * Kinesis Data Analytics application loads reference data only once. If the data * changes, you call the UpdateApplication operation to trigger reloading of * data into your application.
*/ inline ReferenceDataSource& WithS3ReferenceDataSource(S3ReferenceDataSource&& value) { SetS3ReferenceDataSource(std::move(value)); return *this;} /** *Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.
*/ inline const SourceSchema& GetReferenceSchema() const{ return m_referenceSchema; } /** *Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.
*/ inline bool ReferenceSchemaHasBeenSet() const { return m_referenceSchemaHasBeenSet; } /** *Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.
*/ inline void SetReferenceSchema(const SourceSchema& value) { m_referenceSchemaHasBeenSet = true; m_referenceSchema = value; } /** *Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.
*/ inline void SetReferenceSchema(SourceSchema&& value) { m_referenceSchemaHasBeenSet = true; m_referenceSchema = std::move(value); } /** *Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.
*/ inline ReferenceDataSource& WithReferenceSchema(const SourceSchema& value) { SetReferenceSchema(value); return *this;} /** *Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.
*/ inline ReferenceDataSource& WithReferenceSchema(SourceSchema&& value) { SetReferenceSchema(std::move(value)); return *this;} private: Aws::String m_tableName; bool m_tableNameHasBeenSet = false; S3ReferenceDataSource m_s3ReferenceDataSource; bool m_s3ReferenceDataSourceHasBeenSet = false; SourceSchema m_referenceSchema; bool m_referenceSchemaHasBeenSet = false; }; } // namespace Model } // namespace KinesisAnalyticsV2 } // namespace Aws